On Mon, Feb 07, 2022 at 06:18:19PM +0100, mwilck@xxxxxxxx wrote: > From: Martin Wilck <mwilck@xxxxxxxx> > > With the mdadm metadata format v1.0 (and DDF), the MD superblock is at the end > of the device, keeping the partition table at the beginning. This may cause > wrong partition mappings to be created by kpartx on RAID component devices. > > So far I've only seen ugly error messages, but at least in principle it can > happen that kpartx wins a race with MD, and prevents correct setup of the > MD device. > > Sample error messages: > > [ 4.029490] systemd-udevd[445]: dm-0: '/sbin/kpartx -un -p -part /dev/dm-0'(err) 'device-mapper: reload ioctl on 3600140508dbcf02acb448188d73ec97d-part1 failed: Device or resource busy' > [ 4.075666] kernel: device-mapper: table: 254:1: linear: Device lookup failed > [ 4.075945] kernel: device-mapper: ioctl: error adding target to table > > Skip creating partition mappings on MD components. > > Signed-off-by: Martin Wilck <mwilck@xxxxxxxx> Reviewed-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx> > --- > kpartx/kpartx.rules | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/kpartx/kpartx.rules b/kpartx/kpartx.rules > index d7527d7..1969dee 100644 > --- a/kpartx/kpartx.rules > +++ b/kpartx/kpartx.rules > @@ -12,6 +12,9 @@ ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", GOTO="kpartx_end" > # Create dm tables for partitions on multipath devices. > ENV{DM_UUID}!="mpath-?*", GOTO="mpath_kpartx_end" > > +# Ignore RAID members > +ENV{ID_FS_TYPE}=="linux_raid_member|isw_raid_member|ddf_raid_member", GOTO="mpath_kpartx_end" > + > # DM_SUBSYSTEM_UDEV_FLAG1 is the "skip_kpartx" flag. > # For events not generated by libdevmapper, we need to fetch it from db: > # - "change" events with DM_ACTIVATION!="1" (e.g. partition table changes) > -- > 2.34.1 -- dm-devel mailing list dm-devel@xxxxxxxxxx https://listman.redhat.com/mailman/listinfo/dm-devel