From nobody Wed Apr 17 03:33:55 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VK62W739Vz5HjYT; Wed, 17 Apr 2024 03:33:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VK62W5Sjhz4RCH; Wed, 17 Apr 2024 03:33:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1713324835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0KDSAKwG++PXO2FUYa5PE/6HTAdaou0LJqc+i+XOoa4=; b=cY5hxqGDite7tJtMqjnMn+uGDlc1JwE7oSHY3VLAtr0DsYrtACoxG1LJ0/qXJj8DaoMih/ 4YX+A9LYuw+MRdrJyd3m8l0FxGOZZNloHsfb4RqpRM8e05+mXPbG5iQRePe+dPd0cuU+5c vEpCExI3KiZ8reQuN0LW0ev/wTchjZkoL3MZ5h6Zzpomu/ySnmUtm5o+YGBk0h7hie1M2b LRjj7072Tng5KzgeKoR/K1xcrLQQiCCHYowEbcnr3fj8fuhQ0G8aQfiNGzEyV2peKyPLPn go2kr3Egm9P81UwXUY9zg5lyxpYNNOXl0Gfa945kTozNUA1Yi6wrC7Pkhzyeeg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1713324835; a=rsa-sha256; cv=none; b=fMZ/87w0C1Xubpjwr4DsdJ7SkwhtVJrYHpb1GA+mRyHvVlul77Wa4QP3xdtvorCN9I5FsA dsltglAB7YY2wC32fDo6Uyqqf4EBFPU+cvsuZvHIOOiV/HGuW2zJ2YmLPKNejcUqdQpNVC NQy+lpvPZbMoIJITViN2XP45R01lRz4LtIoF4AkHt3jbtYTl2MODMyR0l7weuMVXYfPb2X gZ2KvSXw0poXcgnVy+FhjEG3k3wPrNlDgpv09Z/sXbD1bWFHYMj0OLbxxej38dBduvq/ZT Dckh2xXpcVmI96VMPgjGzqHPqnBU1LKSJToFpy+SY9+U3m3hI/5oyxZD+PV3/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1713324835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0KDSAKwG++PXO2FUYa5PE/6HTAdaou0LJqc+i+XOoa4=; b=KJwqnfrzrVUPxdydhneX8c2/OHcE79PZHPRy0Vd2VUPuUqBj/p2x1f4oq6ckCPxv6GLfvg KWWsIWZ0yQx4hTg01hggAMjS6nEr4OTBFR/IVSRiGiGt9Pk4t7sIRyS3bTG3qpLuQ3Bqtj TgtDT0FEfwNmhE3H10XZePHTUOlAOl1hVrlVbzEK4ZUW/C/UeRmztZuz5DnPLHn1Jar3w2 49NhDbDjQOgIvq3WQmydMrnaLzhLrGPsbNT7zHm+b+TJWoMbdMCzKHeu5Rav9xVGQ+swGt 2A4NGF+ksAd1WteFIAFzbNW9jD0EhfygWN5LrIIu4uBlDtYPqOyYXJEJc+nb0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VK62W54j3z19Sr; Wed, 17 Apr 2024 03:33:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 43H3XtXM087306; Wed, 17 Apr 2024 03:33:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 43H3XtVm087303; Wed, 17 Apr 2024 03:33:55 GMT (envelope-from git) Date: Wed, 17 Apr 2024 03:33:55 GMT Message-Id: <202404170333.43H3XtVm087303@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 383a44fc0bcb - main - nvmecontrol: Preliminary namespace documentation List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 383a44fc0bcb36bf67127856f0c5fabfea522bab Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=383a44fc0bcb36bf67127856f0c5fabfea522bab commit 383a44fc0bcb36bf67127856f0c5fabfea522bab Author: Warner Losh AuthorDate: 2024-04-16 22:37:02 +0000 Commit: Warner Losh CommitDate: 2024-04-17 03:30:19 +0000 nvmecontrol: Preliminary namespace documentation Provide preliminary namespace subcommand documentation, along with some basic definitions from the NVM standards relating to namespaces. Sponsored by: Netflix Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D44682 --- sbin/nvmecontrol/nvmecontrol.8 | 43 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/sbin/nvmecontrol/nvmecontrol.8 b/sbin/nvmecontrol/nvmecontrol.8 index edeeb9afa10f..b812149b5c7d 100644 --- a/sbin/nvmecontrol/nvmecontrol.8 +++ b/sbin/nvmecontrol/nvmecontrol.8 @@ -33,7 +33,7 @@ .\" .\" Author: Jim Harris .\" -.Dd February 28, 2022 +.Dd April 17, 2024 .Dt NVMECONTROL 8 .Os .Sh NAME @@ -302,6 +302,47 @@ will set Retain Asynchronous Event. Various namespace management commands. If namespace management is supported by device, allow list, create and delete namespaces, list, attach and detach controllers to namespaces. +Each NVM device consists of one or more NVM subsystems. +Each NVM subsystem has one or more NVM ports. +Each NVM port is attached to one or more NVM controllers (though typically 1). +Each NVM controller is attached to one or more namespaces. +.Pp +After a namespace is created, it is considered +.Dq allocated . +All namespaces that have not been created are unallocated. +An allocated namespace may be active or inactive. +An active namespace is attached to the controller and may be interacted with. +A namespace can move from active to inactive when detached. +An allocated namespace may be deleted to become unallocated. +For more details on the nuances of NVM namespaces, please see section 2 +.Em Theory of Operation +and section 3 +.Em NVM Express Architecture +of the latest NVM standard. +.Ss ns active +Provide a list of active namespace identifiers for the givne NVM controller. +.Ss ns allocated +Provide a list of allocated namespace identifiers for the givne NVM controller. +.Ss ns attach +Attach an nsid to a controller. +The primary controller is used if one is not specified. +.Ss ns attached +Provide a list of controllers attached to a nsid. +If only a nvme controller argument is provided, a nsid must also be specified. +.Ss ns controllers +Provide a list of all controllers in the NVM subsystem. +.Ss ns create +Creates a new namespace. +.Ss ns delete +Delete a namespace. +It must be currently inactive. +.Ss ns detach +Detach a namespace from a controller. +The namespace will become inaccessible, but its contents will remain if it is +.Em activated +again. +.Ss ns identify +Print detailed information about the namespace. .Ss nsid Reports the namespace id and controller device associated with the .Aq Ar namespace-id