Bug 1330480 - kpartx on multipath device returning before creation of dm partition device
Summary: kpartx on multipath device returning before creation of dm partition device
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: device-mapper-multipath
Version: 7.1
Hardware: x86_64
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Ben Marzinski
QA Contact: Lin Li
URL:
Whiteboard:
Keywords: ZStream
Depends On: 1299648
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-04-26 10:22 UTC by Marcel Kolaja
Modified: 2016-05-12 10:07 UTC (History)
14 users (show)

(edit)
Previously, the kpartx tool was by default returning without waiting for devices to be created. As a consequence, the devices did not exist immediately after kpartx returned, which was unexpected. With this update, kpartx by default waits until the devices are created before returning, and the described problem no longer occurs.
Clone Of: 1299648
(edit)
Last Closed: 2016-05-12 10:07:41 UTC


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:1027 normal SHIPPED_LIVE device-mapper-multipath bug fix update 2016-05-12 13:56:27 UTC

Description Marcel Kolaja 2016-04-26 10:22:55 UTC
This bug has been copied from bug #1299648 and has been proposed
to be backported to 7.2 z-stream (EUS).

Comment 3 Ben Marzinski 2016-04-27 22:58:00 UTC
Fix ported.

Comment 5 Lin Li 2016-05-03 13:00:15 UTC
Reproduced on device-mapper-multipath-0.4.9-77.el7
1). # rpm -qa | grep kpartx
    kpartx-0.4.9-77.el7.x86_64
2). # rpm -qa | grep multipath
device-mapper-multipath-libs-0.4.9-77.el7.x86_64
device-mapper-multipath-0.4.9-77.el7.x86_64
device-mapper-multipath-sysvinit-0.4.9-87.el7.x86_64
3). Execute script mentioned to reproduce
2+0 records in
2+0 records out
2147483648 bytes (2.1 GB) copied, 2.42782 s, 885 MB/s
sfdisk: Warning: /var/tmp/imgtst.img is not a block device

sfdisk: Disk /var/tmp/imgtst.img: cannot get geometry


Disk /var/tmp/imgtst.img: 261 cylinders, 255 heads, 63 sectors/track
sfdisk:  /var/tmp/imgtst.img: unrecognized partition table type

Old situation:
sfdisk: No partitions found

New situation:
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/var/tmp/imgtst.img1          0+    259     260-   2088449+  83  Linux
/var/tmp/imgtst.img2          0       -       0          0    0  Empty
/var/tmp/imgtst.img3          0       -       0          0    0  Empty
/var/tmp/imgtst.img4          0       -       0          0    0  Empty
Warning: no primary partition is marked bootable (active)
This does not matter for LILO, but the DOS MBR will not boot this disk.
Successfully wrote the new partition table


If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
add map loop0p1 (253:5): 0 4176899 linear /dev/loop0 1
NO: 313085087
NO: 316822069
NO: 319848978
NO: 323203567
NO: 326373389
NO: 329500389
NO: 332653052
NO: 336869907
NO: 339931134
NO: 343157047
NO: 346240276
NO: 349212883
NO: 352183837
NO: 355079186
NO: 358050272
OK: 361472619




Verified on device-mapper-multipath-0.4.9-85.el7_2.4
1). # rpm -qa | grep kpartx
kpartx-0.4.9-85.el7_2.4.x86_64
2). # rpm -qa | grep multipath
device-mapper-multipath-0.4.9-85.el7_2.4.x86_64
device-mapper-multipath-libs-0.4.9-85.el7_2.4.x86_64
device-mapper-multipath-sysvinit-0.4.9-85.el7_2.4.x86_64
3). Execute script mentioned to reproduce
2+0 records in
2+0 records out
2147483648 bytes (2.1 GB) copied, 1.34694 s, 1.6 GB/s
sfdisk: Warning: /var/tmp/imgtst.img is not a block device

sfdisk: Disk /var/tmp/imgtst.img: cannot get geometry


Disk /var/tmp/imgtst.img: 261 cylinders, 255 heads, 63 sectors/track
sfdisk:  /var/tmp/imgtst.img: unrecognized partition table type

Old situation:
sfdisk: No partitions found

New situation:
Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/var/tmp/imgtst.img1          0+    259     260-   2088449+  83  Linux
/var/tmp/imgtst.img2          0       -       0          0    0  Empty
/var/tmp/imgtst.img3          0       -       0          0    0  Empty
/var/tmp/imgtst.img4          0       -       0          0    0  Empty
Warning: no primary partition is marked bootable (active)
This does not matter for LILO, but the DOS MBR will not boot this disk.
Successfully wrote the new partition table


If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
add map loop0p1 (253:5): 0 4176899 linear /dev/loop0 1
OK: 784124390



Test result: device mapper partition device is created prior to the kpartx command returning

Comment 7 errata-xmlrpc 2016-05-12 10:07:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-1027.html


Note You need to log in before you can comment on or make changes to this bug.