Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Feb 2022 17:31:38 -0700
From:      Scott Long <scottl@samsco.org>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        Ken Merry <ken@kdm.org>, Alexander Motin <mav@FreeBSD.org>, =?utf-8?Q?Edward_Tomasz_Napiera=C5=82a?= <trasz@freebsd.org>, "scsi@freebsd.org" <scsi@FreeBSD.org>
Subject:   Re: NVMeoF and ctl
Message-ID:  <EB0FE720-A845-44CE-9C51-80F7C995CFE1@samsco.org>
In-Reply-To: <694eabe2-e796-ebdc-b3f1-eff8f8fc1b24@FreeBSD.org>
References:  <694eabe2-e796-ebdc-b3f1-eff8f8fc1b24@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
CTL stands for =E2=80=9CCAM Target Layer=E2=80=9D, but yes, it=E2=80=99s =
a Periph and it=E2=80=99s deeply tied to SCSI protocol, even if it=E2=80=99=
s mostly transport agnostic.  I guess the answer to your question =
depends on the scope of your contract.  It would be ideal to refactor =
CTL into protocol-specific sub-modules, but that might take a =
significant amount of work, and might not be all that satisfying at the =
end.  I=E2=80=99d probably just copy CTL into a new, independent module, =
start replacing SCSI protocol idioms with NVMe ones, and along the way =
look for low-hanging fruit that can be refactored into a common library.

Scott


> On Feb 7, 2022, at 5:24 PM, John Baldwin <jhb@FreeBSD.org> wrote:
>=20
> One of the things I will be working on in the near future is NVMe over =
fabrics
> support, and specifically over TCP as Chelsio NICs include NVMe =
offload support
> (I think PDU encap/decap similar to the cxgbei driver for iSCSI =
offload).
>=20
> A question I have about this is if it makes sense for NVMeoF target =
support to
> make use of ctl?  =46rom what I can see, the code in ctl today seems =
to be
> very SCSI specific including both in the kernel and in the userland =
ctld
> unlike the Linux target code which appears to support both NVMeoF and =
iSCSI
> in its ctld equivalent.  Is the intention for there to be a cleaner =
separation
> here, and if so do you have any thoughts on what the design would be =
like?
> Or should NVMeoF just be its own thing separate from ctl and ctld?
>=20
> --=20
> John Baldwin
>=20




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EB0FE720-A845-44CE-9C51-80F7C995CFE1>