<div dir="ltr">Oh yes. Applied.<div style>Thanks.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Oct 25, 2013 at 2:50 AM,  <span dir="ltr"><<a href="mailto:michaelc@cs.wisc.edu" target="_blank">michaelc@cs.wisc.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">From: Mike Christie <<a href="mailto:michaelc@cs.wisc.edu">michaelc@cs.wisc.edu</a>><br>
<br>
If updating the dm device in the kernel fails we cannot leave<br>
the mpp size updated, because if we correct the problem and<br>
try to resize later multipathd prevents resizing the device<br>
of the size has not changed.<br>
<br>
I hit this when all paths to a dm-multipath device where not<br>
yet updated but multipathd resize was run.<br>
<br>
Signed-off-by: Mike Christie <<a href="mailto:michaelc@cs.wisc.edu">michaelc@cs.wisc.edu</a>><br>
---<br>
 multipathd/cli_handlers.c |    2 ++<br>
 1 files changed, 2 insertions(+), 0 deletions(-)<br>
<br>
diff --git a/multipathd/cli_handlers.c b/multipathd/cli_handlers.c<br>
index 4b860bb..58a5643 100644<br>
--- a/multipathd/cli_handlers.c<br>
+++ b/multipathd/cli_handlers.c<br>
@@ -567,6 +567,7 @@ int resize_map(struct multipath *mpp, unsigned long long size,<br>
               struct vectors * vecs)<br>
 {<br>
        char params[PARAMS_SIZE] = {0};<br>
+       unsigned long long orig_size = mpp->size;<br>
<br>
        mpp->size = size;<br>
        update_mpp_paths(mpp, vecs->pathvec);<br>
@@ -575,6 +576,7 @@ int resize_map(struct multipath *mpp, unsigned long long size,<br>
        if (domap(mpp, params) <= 0) {<br>
                condlog(0, "%s: failed to resize map : %s", mpp->alias,<br>
                        strerror(errno));<br>
+               mpp->size = orig_size;<br>
                return 1;<br>
        }<br>
        return 0;<br>
<span class="HOEnZb"><font color="#888888">--<br>
1.7.1<br>
<br>
</font></span></blockquote></div><br></div>