Bug 1148174
Summary: | beaker-system-scan fails when /boot is on a mapped block device | ||
---|---|---|---|
Product: | [Retired] Beaker | Reporter: | Arthur Benoit <abenoit> |
Component: | tests | Assignee: | Amit Saha <asaha> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Amit Saha <asaha> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 0.18 | CC: | abenoit, aigao, asaha, dcallagh, ebaak, rmancy |
Target Milestone: | 19.0 | Keywords: | Patch |
Target Release: | --- | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2014-10-27 22:56:42 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Comment 2
Amit Saha
2014-10-07 00:19:54 UTC
(In reply to Amit Saha from comment #2) > The reason why it is breaking now and not before was that we were ignoring > the exit code of "getdriver.sh". After a recent commit > (https://git.beaker-project.org/cgit/beaker-system-scan/commit/ > ?id=c8a349ffb19390842380404288535178592e629e), where we actually check the > status code of the exited process, this becomes visible. > > The real reason is: > > The boot disk on this system is: > > /dev/mapper/mpathap1 on /boot type ext4 (rw) > > with the present code, "getdriver.sh" is called as follows: > > ./getdriver.sh 'mapper!mpathap1' > # [root@dell-pec6105-01 beaker-system-scan]# echo $? > 1 > > which is a non-0 exit code and hence the traceback. So the right thing to do here I think is: Find the boot disk: # device=mount | grep "on /boot" | awk '{print $1}' Find the dm device: [root@dell-pec6105-01 block]# readlink /dev/mapper/mpathap1 ../dm-1 Get the physical devices: [root@dell-pec6105-01 block]# ls /sys/block/dm-1/slaves/ dm-0 [root@dell-pec6105-01 block]# ls /sys/block/dm-0/slaves/ sda sdb sdc sdd [root@dell-pec6105-01 block]# /root/beaker-system-scan/getdriver.sh sda sd lpfc lpfc [root@dell-pec6105-01 block]# /root/beaker-system-scan/getdriver.sh sdb sd lpfc .. and so on. I believe that is the job of getdriver.sh to take care of that. From looking at getdriver.sh it's not clear what the best way to make it give a good result is. It's also not clear in this case (multipath dm block device) what the desired answer is anyway. And we're only using it to populate the BOOTDISK key-value. So let's just change it back to ignoring failures from getdriver.sh when handling bootdisk. > > So let's just change it back to ignoring failures from getdriver.sh when > handling bootdisk. http://gerrit.beaker-project.org/#/c/3379/ Amit, can you please prepare a new build of beaker-system-scan with this fix? I have requested a loan for the system as well, so I can give it a shot too. Arthur: please feel free to go ahead and give it a try and let us know. |