2017-04-26 6:05 GMT-07:00 Sachin Prabhu <sprabhu@xxxxxxxxxx>: > Incorrect return value for shares not using the prefix patch means that > we will never match superblocks for these shares. > > Fixes: commit c1d8b24d1819 ("Compare prepaths when comparing superblocks") > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Sachin Prabhu <sprabhu@xxxxxxxxxx> > --- > fs/cifs/connect.c | 14 ++++++-------- > 1 file changed, 6 insertions(+), 8 deletions(-) > > diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c > index d82467c..d95744d 100644 > --- a/fs/cifs/connect.c > +++ b/fs/cifs/connect.c > @@ -2912,16 +2912,14 @@ match_prepath(struct super_block *sb, struct cifs_mnt_data *mnt_data) > { > struct cifs_sb_info *old = CIFS_SB(sb); > struct cifs_sb_info *new = mnt_data->cifs_sb; > + bool old_set = old->mnt_cifs_flags & CIFS_MOUNT_USE_PREFIX_PATH; > + bool new_set = new->mnt_cifs_flags & CIFS_MOUNT_USE_PREFIX_PATH; > > - if (old->mnt_cifs_flags & CIFS_MOUNT_USE_PREFIX_PATH) { > - if (!(new->mnt_cifs_flags & CIFS_MOUNT_USE_PREFIX_PATH)) > - return 0; > - /* The prepath should be null terminated strings */ > - if (strcmp(new->prepath, old->prepath)) > - return 0; > - > + if (old_set && new_set && !strcmp(new->prepath, old->prepath)) > return 1; > - } > + else if (!old_set && !new_set) > + return 1; > + > return 0; > } > > -- > 2.9.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-cifs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html Reviewed-by: Pavel Shilovsky <pshilov@xxxxxxxxxxxxx> -- Best regards, Pavel Shilovsky -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html