Re: [PATCH] multipathd: fail path when path check timeout

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 11, 2016 at 02:50:00PM +0800, tang.junhui@xxxxxxxxxx wrote:
>    Please have a review for this patch, any comment will be highly
>    appreciated.

This is clearly correct. I suspect that there will be other places where
we need to also check for PATH_TIMEOUT, since it is basically the same
as PATH_DOWN, except with a different state name. For instance, we
only log error messages on repeated checks for (newstate == PATH_DOWN),
and we should probably do that for PATH_TIMEOUT as well. There are
probably more instances outside of check_path.

-Ben

> 
>    ������:         tang.junhui@xxxxxxxxxx
>    �ռ���:         christophe varoqui <christophe.varoqui@xxxxxxx>,
>    ����:        dm-devel@xxxxxxxxxx, zhang.kai16@xxxxxxxxxx, "tang.junhui"
>    <tang.junhui@xxxxxxxxxx>
>    ����:         2016/08/10 16:11
>    ����:        [PATCH] multipathd: fail path when path check timeout
> 
>    --------------------------------------------------------------------------
> 
>    From: "tang.junhui" <tang.junhui@xxxxxxxxxx>
> 
>    path should be failed when path status is PATH_TIMEOUT after check,
>    otherwise, the valid number of paths in the map would be increased when
>    the path status is PATH_UP after the next turn check, which would cause
>    the valid number of paths exceeding the total number of paths in the map.
> 
>    Signed-off-by: tang.junhui <tang.junhui@xxxxxxxxxx>
>    ---
>    multipathd/main.c | 2 +-
>    1 file changed, 1 insertion(+), 1 deletion(-)
> 
>    diff --git a/multipathd/main.c b/multipathd/main.c
>    index f5e9a01..01f1e58 100644
>    --- a/multipathd/main.c
>    +++ b/multipathd/main.c
>    @@ -1585,7 +1585,7 @@ check_path (struct vectors * vecs, struct path * pp,
>    int ticks)
>                                      pp->checkint = conf->checkint;
>                                      put_multipath_config(conf);
> 
>    -                                  if (newstate == PATH_DOWN || newstate
>    == PATH_SHAKY) {
>    +                                  if (newstate == PATH_DOWN || newstate
>    == PATH_SHAKY || newstate == PATH_TIMEOUT) {
>                                                       /*
>                                                        * proactively fail
>    path in the DM
>                                                        */
>    --
>    2.8.1.windows.1

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel




[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux