From: Sage Weil Date: Thu, 6 Dec 2018 16:02:20 +0000 (-0600) Subject: common/blkdev: micron SSDs don't include vendor name in ID_SERIAL X-Git-Tag: v14.1.0~678^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=3a4ebc60ed88b39ad008e15d2ce85e4c2ee3d7e4;p=ceph.git common/blkdev: micron SSDs don't include vendor name in ID_SERIAL According to Ryan Meredith , the NVMes begin with MTFD, but their other devices use the standard Micron_$model_$serial. Signed-off-by: Sage Weil --- diff --git a/src/common/blkdev.cc b/src/common/blkdev.cc index 7dc3f7e48e6b..42f096d9b7e7 100644 --- a/src/common/blkdev.cc +++ b/src/common/blkdev.cc @@ -448,6 +448,10 @@ std::string get_device_id(const std::string& devname) device_id = id_model + '_' + id_serial_short; } else if (id_serial.size()) { device_id = id_serial; + if (device_id.substr(0, 4) == "MTFD") { + // Micron NVMes hide the vendor + device_id = "Micron_" + device_id; + } } if (device_id.size()) { std::replace(device_id.begin(), device_id.end(), ' ', '_'); diff --git a/src/test/common/blkdev-udevadm-info-samples/reesi001.nvme0n1 b/src/test/common/blkdev-udevadm-info-samples/reesi001.nvme0n1 new file mode 100644 index 000000000000..48eada7725ab --- /dev/null +++ b/src/test/common/blkdev-udevadm-info-samples/reesi001.nvme0n1 @@ -0,0 +1,16 @@ +P: /devices/pci0000:00/0000:00:02.1/0000:04:00.0/nvme/nvme0/nvme0n1 +N: nvme0n1 +S: disk/by-id/nvme-MTFDHBG800MCG-1AN1ZABYY_ZF1000MT +E: DEVLINKS=/dev/disk/by-id/nvme-MTFDHBG800MCG-1AN1ZABYY_ZF1000MT +E: DEVNAME=/dev/nvme0n1 +E: DEVPATH=/devices/pci0000:00/0000:00:02.1/0000:04:00.0/nvme/nvme0/nvme0n1 +E: DEVTYPE=disk +E: ID_PART_TABLE_TYPE=gpt +E: ID_PART_TABLE_UUID=c206417c-54fd-4938-8223-32343c5d1057 +E: ID_SERIAL=MTFDHBG800MCG-1AN1ZABYY_ZF1000MT +E: ID_SERIAL_SHORT=ZF1000MT +E: MAJOR=259 +E: MINOR=0 +E: SUBSYSTEM=block +E: TAGS=:systemd: +E: USEC_INITIALIZED=2455622 diff --git a/src/test/common/blkdev-udevadm-info-samples/reesi001.nvme0n1.devid b/src/test/common/blkdev-udevadm-info-samples/reesi001.nvme0n1.devid new file mode 100644 index 000000000000..6341dd2502f2 --- /dev/null +++ b/src/test/common/blkdev-udevadm-info-samples/reesi001.nvme0n1.devid @@ -0,0 +1 @@ +Micron_MTFDHBG800MCG-1AN1ZABYY_ZF1000MT