diff --git a/SOURCES/0135-RHBZ-1330480-kpartx-sync.patch b/SOURCES/0135-RHBZ-1330480-kpartx-sync.patch new file mode 100644 index 0000000..ba95135 --- /dev/null +++ b/SOURCES/0135-RHBZ-1330480-kpartx-sync.patch @@ -0,0 +1,59 @@ +--- + kpartx/kpartx.c | 10 +++++++--- + multipath/multipath.rules | 2 +- + 2 files changed, 8 insertions(+), 4 deletions(-) + +Index: multipath-bz1330480/kpartx/kpartx.c +=================================================================== +--- multipath-bz1330480.orig/kpartx/kpartx.c ++++ multipath-bz1330480/kpartx/kpartx.c +@@ -57,7 +57,7 @@ struct pt { + } pts[MAXTYPES]; + + int ptct = 0; +-int udev_sync = 0; ++int udev_sync = 1; + + static void + addpts(char *t, ptreader f) +@@ -85,7 +85,7 @@ initpts(void) + addpts("ps3", read_ps3_pt); + } + +-static char short_opts[] = "rladfgvp:t:su"; ++static char short_opts[] = "rladfgvp:t:snu"; + + /* Used in gpt.c */ + int force_gpt=0; +@@ -104,7 +104,8 @@ usage(void) { + printf("\t-g force GUID partition table (GPT)\n"); + printf("\t-f force devmap create\n"); + printf("\t-v verbose\n"); +- printf("\t-s sync mode. Don't return until the partitions are created\n"); ++ printf("\t-n nosync mode. Return before the partitions are created\n"); ++ printf("\t-s sync mode. Don't return until the partitions are created. Default.\n"); + return 1; + } + +@@ -270,6 +271,9 @@ main(int argc, char **argv){ + case 's': + udev_sync = 1; + break; ++ case 'n': ++ udev_sync = 0; ++ break; + case 'u': + what = UPDATE; + break; +Index: multipath-bz1330480/multipath/multipath.rules +=================================================================== +--- multipath-bz1330480.orig/multipath/multipath.rules ++++ multipath-bz1330480/multipath/multipath.rules +@@ -48,6 +48,6 @@ ENV{DM_ACTIVATION}=="1", ENV{DM_MULTIPAT + ENV{DM_SUSPENDED}=="1", GOTO="end_mpath" + ENV{DM_ACTION}=="PATH_FAILED", GOTO="end_mpath" + ENV{DM_ACTIVATION}!="1", ENV{DM_MULTIPATH_NEED_KPARTX}!="1", GOTO="end_mpath" +-RUN+="$env{MPATH_SBIN_PATH}/kpartx -a $tempnode", \ ++RUN+="$env{MPATH_SBIN_PATH}/kpartx -an $tempnode", \ + ENV{DM_MULTIPATH_NEED_KPARTX}="" + LABEL="end_mpath" diff --git a/SPECS/device-mapper-multipath.spec b/SPECS/device-mapper-multipath.spec index d42cd98..eaedd89 100644 --- a/SPECS/device-mapper-multipath.spec +++ b/SPECS/device-mapper-multipath.spec @@ -1,7 +1,7 @@ Summary: Tools to manage multipath devices using device-mapper Name: device-mapper-multipath Version: 0.4.9 -Release: 85%{?dist}.3 +Release: 85%{?dist}.4 License: GPL+ Group: System Environment/Base URL: http://christophe.varoqui.free.fr/ @@ -142,6 +142,7 @@ Patch0131: 0131-UPBZ-1259831-lock-retry.patch Patch0132: 0132-RHBZ-1296979-fix-define.patch Patch0133: 0133-RHBZ-1321019-wait-for-map-add.patch Patch0134: 0134-UPBZ-1328515-dont-fail-discovery.patch +Patch0135: 0135-RHBZ-1330480-kpartx-sync.patch # runtime Requires: %{name}-libs = %{version}-%{release} @@ -328,6 +329,7 @@ kpartx manages partition creation and removal for device-mapper devices. %patch0132 -p1 %patch0133 -p1 %patch0134 -p1 +%patch0135 -p1 cp %{SOURCE1} . %build @@ -422,6 +424,11 @@ bin/systemctl --no-reload enable multipathd.service >/dev/null 2>&1 ||: %{_mandir}/man8/kpartx.8.gz %changelog +* Wed Apr 27 2016 Benjamin Marzinski 0.4.9-85.4 +- Add 0135-RHBZ-1330480-kpartx-sync.patch + * default to using udev sync mode +- Resolves: bz #1330480 + * Tue Apr 19 2016 Benjamin Marzinski 0.4.9-85.3 - Add 0134-UPBZ-1328515-dont-fail-discovery.patch * don't fail discovery because individual paths failed.