[libvirt] [PATCH 0/2] Fix the scsi util test failure

Detected by Pavel reported. Osier Yang (2): util: Accept test data path for scsi device's sg_path tests: Modify the scsi util tests src/util/virscsi.c | 3 ++- tests/virscsidata/1:0:0:0/block/sdh/dev | 1 + tests/virscsidata/1:0:0:0/block/sr0/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev | 1 + tests/virscsidata/sg0 | 0 tests/virscsidata/sg8 | 0 tests/virscsitest.c | 4 ++-- 8 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 tests/virscsidata/1:0:0:0/block/sdh/dev delete mode 100644 tests/virscsidata/1:0:0:0/block/sr0/dev delete mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev create mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev create mode 100644 tests/virscsidata/sg0 create mode 100644 tests/virscsidata/sg8 -- 1.8.1.4

Commit 10c9ceff6d intended to introduce new argument for the testing purpose, but it missed the similar changing of the device's sg_path. The problem was hidden since my laptop has the /dev/sg0 and /dev/sg1. A later patch will modify the tests accordingly. Signed-off-by: Osier Yang <jyang@redhat.com> Reported-by: Hrdina Pavel <phrdina@redhat.com> --- src/util/virscsi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/util/virscsi.c b/src/util/virscsi.c index 731a01c..acc3815 100644 --- a/src/util/virscsi.c +++ b/src/util/virscsi.c @@ -222,7 +222,8 @@ virSCSIDeviceNew(const char *sysfs_prefix, if (virAsprintf(&dev->name, "%d:%d:%d:%d", dev->adapter, dev->bus, dev->target, dev->unit) < 0 || - virAsprintf(&dev->sg_path, "/dev/%s", sg) < 0) + virAsprintf(&dev->sg_path, "%s/%s", + sysfs_prefix ? sysfs_prefix : "/dev", sg) < 0) goto cleanup; if (!virFileExists(dev->sg_path)) { -- 1.8.1.4

Add tests/virscsidata/sg0 and tests/virscsidata/sg8 as the test input for constructing scsi->sg_path. And change the scsi generic number of "1:0:0:0", because it's easy to hide the problem (assuming most machines have a CDROM drive). Signed-off-by: Osier Yang <jyang@redhat.com> --- tests/virscsidata/1:0:0:0/block/sdh/dev | 1 + tests/virscsidata/1:0:0:0/block/sr0/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev | 1 + tests/virscsidata/sg0 | 0 tests/virscsidata/sg8 | 0 tests/virscsitest.c | 4 ++-- 7 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 tests/virscsidata/1:0:0:0/block/sdh/dev delete mode 100644 tests/virscsidata/1:0:0:0/block/sr0/dev delete mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev create mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev create mode 100644 tests/virscsidata/sg0 create mode 100644 tests/virscsidata/sg8 diff --git a/tests/virscsidata/1:0:0:0/block/sdh/dev b/tests/virscsidata/1:0:0:0/block/sdh/dev new file mode 100644 index 0000000..3d33f0f --- /dev/null +++ b/tests/virscsidata/1:0:0:0/block/sdh/dev @@ -0,0 +1 @@ +11:0 diff --git a/tests/virscsidata/1:0:0:0/block/sr0/dev b/tests/virscsidata/1:0:0:0/block/sr0/dev deleted file mode 100644 index 3d33f0f..0000000 --- a/tests/virscsidata/1:0:0:0/block/sr0/dev +++ /dev/null @@ -1 +0,0 @@ -11:0 diff --git a/tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev b/tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev deleted file mode 100644 index bd84814..0000000 --- a/tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev +++ /dev/null @@ -1 +0,0 @@ -21:1 diff --git a/tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev b/tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev new file mode 100644 index 0000000..bd84814 --- /dev/null +++ b/tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev @@ -0,0 +1 @@ +21:1 diff --git a/tests/virscsidata/sg0 b/tests/virscsidata/sg0 new file mode 100644 index 0000000..e69de29 diff --git a/tests/virscsidata/sg8 b/tests/virscsidata/sg8 new file mode 100644 index 0000000..e69de29 diff --git a/tests/virscsitest.c b/tests/virscsitest.c index d256a0e..d4b3e4a 100644 --- a/tests/virscsitest.c +++ b/tests/virscsitest.c @@ -43,7 +43,7 @@ test1(const void *data ATTRIBUTE_UNUSED) "scsi_host1", 0, 0, 0))) return -1; - if (STRNEQ(name, "sr0")) + if (STRNEQ(name, "sdh")) goto cleanup; ret = 0; @@ -72,7 +72,7 @@ test2(const void *data ATTRIBUTE_UNUSED) sgname = virSCSIDeviceGetSgName(virscsi_prefix, "scsi_host1", 0, 0, 0); - if (!sgname || STRNEQ(sgname, "sg1")) + if (!sgname || STRNEQ(sgname, "sg8")) goto cleanup; if (!(dev = virSCSIDeviceNew(virscsi_prefix, "scsi_host1", -- 1.8.1.4

On 30/01/14 19:48, Osier Yang wrote:
Detected by Pavel reported.
Sorry, s/Pavel reported/Hrdina Pavel/,
Osier Yang (2): util: Accept test data path for scsi device's sg_path tests: Modify the scsi util tests
src/util/virscsi.c | 3 ++- tests/virscsidata/1:0:0:0/block/sdh/dev | 1 + tests/virscsidata/1:0:0:0/block/sr0/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev | 1 + tests/virscsidata/sg0 | 0 tests/virscsidata/sg8 | 0 tests/virscsitest.c | 4 ++-- 8 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 tests/virscsidata/1:0:0:0/block/sdh/dev delete mode 100644 tests/virscsidata/1:0:0:0/block/sr0/dev delete mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev create mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev create mode 100644 tests/virscsidata/sg0 create mode 100644 tests/virscsidata/sg8

On 30.1.2014 12:48, Osier Yang wrote:
Detected by Pavel reported.
Osier Yang (2): util: Accept test data path for scsi device's sg_path tests: Modify the scsi util tests
src/util/virscsi.c | 3 ++- tests/virscsidata/1:0:0:0/block/sdh/dev | 1 + tests/virscsidata/1:0:0:0/block/sr0/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev | 1 + tests/virscsidata/sg0 | 0 tests/virscsidata/sg8 | 0 tests/virscsitest.c | 4 ++-- 8 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 tests/virscsidata/1:0:0:0/block/sdh/dev delete mode 100644 tests/virscsidata/1:0:0:0/block/sr0/dev delete mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev create mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev create mode 100644 tests/virscsidata/sg0 create mode 100644 tests/virscsidata/sg8
ACK series, the test now works also on RHEL-7. Pavel

On 30.1.2014 14:20, Pavel Hrdina wrote:
On 30.1.2014 12:48, Osier Yang wrote:
Detected by Pavel reported.
Osier Yang (2): util: Accept test data path for scsi device's sg_path tests: Modify the scsi util tests
src/util/virscsi.c | 3 ++- tests/virscsidata/1:0:0:0/block/sdh/dev | 1 + tests/virscsidata/1:0:0:0/block/sr0/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev | 1 + tests/virscsidata/sg0 | 0 tests/virscsidata/sg8 | 0 tests/virscsitest.c | 4 ++-- 8 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 tests/virscsidata/1:0:0:0/block/sdh/dev delete mode 100644 tests/virscsidata/1:0:0:0/block/sr0/dev delete mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev create mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev create mode 100644 tests/virscsidata/sg0 create mode 100644 tests/virscsidata/sg8
ACK series, the test now works also on RHEL-7.
Pavel
I've pushed the patches, Pavel

On 30/01/14 23:37, Pavel Hrdina wrote:
On 30.1.2014 14:20, Pavel Hrdina wrote:
On 30.1.2014 12:48, Osier Yang wrote:
Detected by Pavel reported.
Osier Yang (2): util: Accept test data path for scsi device's sg_path tests: Modify the scsi util tests
src/util/virscsi.c | 3 ++- tests/virscsidata/1:0:0:0/block/sdh/dev | 1 + tests/virscsidata/1:0:0:0/block/sr0/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev | 1 - tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev | 1 + tests/virscsidata/sg0 | 0 tests/virscsidata/sg8 | 0 tests/virscsitest.c | 4 ++-- 8 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 tests/virscsidata/1:0:0:0/block/sdh/dev delete mode 100644 tests/virscsidata/1:0:0:0/block/sr0/dev delete mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg1/dev create mode 100644 tests/virscsidata/1:0:0:0/scsi_generic/sg8/dev create mode 100644 tests/virscsidata/sg0 create mode 100644 tests/virscsidata/sg8
ACK series, the test now works also on RHEL-7.
Pavel
I've pushed the patches,
Thanks. Osier
participants (2)
-
Osier Yang
-
Pavel Hrdina