From 6fe5a3e134ff435ecc2feec3d21370c8b23af6f5 Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Mon, 7 Nov 2016 15:44:38 -0800 Subject: [PATCH] bluestore: trim serial number remove any non-alpha character appended at the end Signed-off-by: Yehuda Sadeh --- src/os/bluestore/NVMEDevice.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/os/bluestore/NVMEDevice.cc b/src/os/bluestore/NVMEDevice.cc index 32a3a04316ce..410869d404ce 100644 --- a/src/os/bluestore/NVMEDevice.cc +++ b/src/os/bluestore/NVMEDevice.cc @@ -581,7 +581,7 @@ static bool probe_cb(void *cb_ctx, struct spdk_pci_device *pci_dev) } if (ctx->sn_tag.compare(string(serial_number, 16))) { - dout(0) << __func__ << " device serial number not match " << serial_number << dendl; + dout(0) << __func__ << " device serial number (" << ctx->sn_tag << ") not match " << serial_number << dendl; return false; } @@ -795,6 +795,9 @@ int NVMEDevice::open(string p) derr << __func__ << " unable to read " << p << ": " << cpp_strerror(r) << dendl; return r; } + while (r > 0 && !isalpha(buf[r-1])) { + --r; + } serial_number = string(buf, r); r = manager.try_get(serial_number, &driver); if (r < 0) { -- 2.47.3