From f0983e9a3ae915fb2a772fda5ba7db1293e5b257 Mon Sep 17 00:00:00 2001 From: goll Date: Tue, 9 Jun 2026 23:08:04 +0200 Subject: [PATCH] nvme: Fix namespace parsing Signed-off-by: goll --- sysfs/class_nvme.go | 2 +- sysfs/class_nvme_test.go | 8 ++++---- testdata/fixtures.ttar | 12 ++++++------ 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/sysfs/class_nvme.go b/sysfs/class_nvme.go index 7c4abb0c..7c3638a6 100644 --- a/sysfs/class_nvme.go +++ b/sysfs/class_nvme.go @@ -27,7 +27,7 @@ import ( const nvmeClassPath = "class/nvme" -var nvmeNamespacePattern = regexp.MustCompile(`nvme\d+c\d+n(\d+)`) +var nvmeNamespacePattern = regexp.MustCompile(`nvme\d+n(\d+)`) // NVMeNamespace contains info from files in /sys/class/nvme//. type NVMeNamespace struct { diff --git a/sysfs/class_nvme_test.go b/sysfs/class_nvme_test.go index 9c06cdb0..613894b0 100644 --- a/sysfs/class_nvme_test.go +++ b/sysfs/class_nvme_test.go @@ -96,7 +96,7 @@ func TestNVMeNamespaceParsingWithMockData(t *testing.T) { } // Create mock namespace directory and files - namespaceDir := filepath.Join(deviceDir, "nvme0c0n1") + namespaceDir := filepath.Join(deviceDir, "nvme0n1") err = os.MkdirAll(filepath.Join(namespaceDir, "queue"), 0o755) if err != nil { t.Fatal(err) @@ -205,8 +205,8 @@ func TestNVMeMultipleNamespaces(t *testing.T) { anaState string blockSize string }{ - {"nvme1c0n1", "1", "100000", "2000000000", "optimized", "4096"}, - {"nvme1c0n2", "2", "50000", "1000000000", "active", "512"}, + {"nvme1n1", "1", "100000", "2000000000", "optimized", "4096"}, + {"nvme1n2", "2", "50000", "1000000000", "active", "512"}, } for _, ns := range namespaces { @@ -344,7 +344,7 @@ func TestNVMeNamespaceMissingFiles(t *testing.T) { } // Create namespace directory but with missing files - namespaceDir := filepath.Join(deviceDir, "nvme2c0n1") + namespaceDir := filepath.Join(deviceDir, "nvme2n1") err = os.MkdirAll(filepath.Join(namespaceDir, "queue"), 0o755) if err != nil { t.Fatal(err) diff --git a/testdata/fixtures.ttar b/testdata/fixtures.ttar index 8034c9a7..7b9f9383 100644 --- a/testdata/fixtures.ttar +++ b/testdata/fixtures.ttar @@ -6832,28 +6832,28 @@ Lines: 1 Samsung SSD 970 PRO 512GB Mode: 644 # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Directory: fixtures/sys/class/nvme/nvme0/nvme0c0n0 +Directory: fixtures/sys/class/nvme/nvme0/nvme0n0 Mode: 755 # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Path: fixtures/sys/class/nvme/nvme0/nvme0c0n0/ana_state +Path: fixtures/sys/class/nvme/nvme0/nvme0n0/ana_state Lines: 1 optimized Mode: 644 # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Path: fixtures/sys/class/nvme/nvme0/nvme0c0n0/nuse +Path: fixtures/sys/class/nvme/nvme0/nvme0n0/nuse Lines: 1 488281250 Mode: 644 # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Directory: fixtures/sys/class/nvme/nvme0/nvme0c0n0/queue +Directory: fixtures/sys/class/nvme/nvme0/nvme0n0/queue Mode: 755 # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Path: fixtures/sys/class/nvme/nvme0/nvme0c0n0/queue/logical_block_size +Path: fixtures/sys/class/nvme/nvme0/nvme0n0/queue/logical_block_size Lines: 1 4096 Mode: 644 # ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Path: fixtures/sys/class/nvme/nvme0/nvme0c0n0/size +Path: fixtures/sys/class/nvme/nvme0/nvme0n0/size Lines: 1 3906250000 Mode: 644