diff options
Diffstat (limited to '0059-RHBZ-607874-handle-offlined-paths.patch')
-rw-r--r-- | 0059-RHBZ-607874-handle-offlined-paths.patch | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/0059-RHBZ-607874-handle-offlined-paths.patch b/0059-RHBZ-607874-handle-offlined-paths.patch deleted file mode 100644 index 75bf35a..0000000 --- a/0059-RHBZ-607874-handle-offlined-paths.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- - libmultipath/discovery.c | 9 +++++++-- - multipathd/main.c | 13 ++++++++++--- - 2 files changed, 17 insertions(+), 5 deletions(-) - -Index: multipath-tools/libmultipath/discovery.c -=================================================================== ---- multipath-tools.orig/libmultipath/discovery.c -+++ multipath-tools/libmultipath/discovery.c -@@ -794,8 +794,13 @@ get_state (struct path * pp, int daemon) - condlog(3, "%s: get_state", pp->dev); - - if (!checker_selected(c)) { -- if (daemon) -- pathinfo(pp, conf->hwtable, DI_SYSFS); -+ if (daemon || pp->sysdev == NULL) { -+ if (pathinfo(pp, conf->hwtable, DI_SYSFS) != 0) { -+ condlog(3, "%s: couldn't get sysfs pathinfo", -+ pp->dev); -+ return PATH_UNCHECKED; -+ } -+ } - select_checker(pp); - if (!checker_selected(c)) { - condlog(3, "%s: No checker selected", pp->dev); -Index: multipath-tools/multipathd/main.c -=================================================================== ---- multipath-tools.orig/multipathd/main.c -+++ multipath-tools/multipathd/main.c -@@ -365,6 +365,7 @@ ev_add_path (char * devname, struct vect - struct multipath * mpp; - struct path * pp; - char empty_buff[WWID_SIZE] = {0}; -+ int retries = 3; - - if (strstr(devname, "..") != NULL) { - /* -@@ -450,12 +451,14 @@ rescan: - /* - * deal with asynchronous uevents :(( - */ -- if (mpp->action == ACT_RELOAD) { -+ if (mpp->action == ACT_RELOAD && retries-- > 0) { - condlog(0, "%s: uev_add_path sleep", mpp->alias); - sleep(1); - update_mpp_paths(mpp, vecs->pathvec); - goto rescan; - } -+ else if (mpp->action == ACT_RELOAD) -+ condlog(0, "%s: giving up reload", mpp->alias); - else - goto fail_map; - } -@@ -473,8 +476,12 @@ rescan: - start_waiter_thread(mpp, vecs)) - goto fail_map; - -- condlog(2, "%s path added to devmap %s", devname, mpp->alias); -- return 0; -+ if (retries > 0) { -+ condlog(2, "%s path added to devmap %s", devname, mpp->alias); -+ return 0; -+ } -+ else -+ return 1; - - fail_map: - remove_map(mpp, vecs, 1); |