[PATCH 2/2] nvme-tcp: support specifying the congestion-control

Christoph Hellwig hch at lst.de
Mon Mar 7 23:12:27 PST 2022


On Sat, Mar 05, 2022 at 03:09:15PM +0800, Mingbao Sun wrote:
> Well, actually I did have thought whether the calling of network API
> here is proper. Since I did find that there is no call to APIs of
> PCI/RDMA/TCP in fabrics.c.

Yes - for a good reason.  Without networking support your patch won't
even compile (both the host and target side).

> But I hope the following could make a defense for it:
> 
> Anyway, we need to validate the tcp_congestion passed in from
> user-space, right?

Do we?  It seems like no one else really calls this routine to verify
things.  In fact it has no modular users at all in the current tree.

> The role of nvmf_parse_options is similar to that of
> drivers/nvme/target/configfs.c from the target side.
> And both of them can not avoid handling specific options of the
> sub-classes (e.g., NVMF_OPT_HDR_DIGEST, NVMF_OPT_TOS, NVMF_OPT_KATO).

NVMF_OPT_KATO is completely generic, but yes, there other two are
transport specific.  None of them calls out into other modules
that would need dependecies, though.

I'm also a little concerned that no other in kernel user like iSCSI,
NBD or NFS has any code like this.



More information about the Linux-nvme mailing list