* [cifs:for-next 3/6] fs/smb/client/connect.c:3647:37: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
@ 2024-04-02 7:08 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-04-02 7:08 UTC (permalink / raw)
To: Paulo Alcantara; +Cc: oe-kbuild-all, linux-cifs, samba-technical, Steve French
tree: git://git.samba.org/sfrench/cifs-2.6.git for-next
head: 0bc54e6a9c31ede9508fb81edbd11983494047ee
commit: 311deca30437896573ce0bf5c302095533041abb [3/6] smb: client: guarantee refcounted children from parent session
config: parisc-defconfig (https://download.01.org/0day-ci/archive/20240402/202404021510.UA1q5xJ1-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240402/202404021510.UA1q5xJ1-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202404021510.UA1q5xJ1-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/linux/bug.h:5,
from include/linux/thread_info.h:13,
from include/asm-generic/preempt.h:5,
from ./arch/parisc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:79,
from include/linux/spinlock.h:56,
from include/linux/wait.h:9,
from include/linux/wait_bit.h:8,
from include/linux/fs.h:6,
from fs/smb/client/connect.c:8:
fs/smb/client/connect.c: In function 'cifs_mount':
>> fs/smb/client/connect.c:3647:37: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
3647 | if (WARN_ON(!mnt_ctx->server))
| ^~
arch/parisc/include/asm/bug.h:86:32: note: in definition of macro 'WARN_ON'
86 | int __ret_warn_on = !!(x); \
| ^
fs/smb/client/connect.c:3649:42: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
3649 | else if (WARN_ON(!mnt_ctx->ses))
| ^~
arch/parisc/include/asm/bug.h:86:32: note: in definition of macro 'WARN_ON'
86 | int __ret_warn_on = !!(x); \
| ^
fs/smb/client/connect.c:3651:42: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
3651 | else if (WARN_ON(!mnt_ctx->tcon))
| ^~
arch/parisc/include/asm/bug.h:86:32: note: in definition of macro 'WARN_ON'
86 | int __ret_warn_on = !!(x); \
| ^
vim +3647 fs/smb/client/connect.c
3590
3591 #ifdef CONFIG_CIFS_DFS_UPCALL
3592 int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
3593 {
3594 struct cifs_mount_ctx mnt_ctx = { .cifs_sb = cifs_sb, .fs_ctx = ctx, };
3595 bool isdfs;
3596 int rc;
3597
3598 rc = dfs_mount_share(&mnt_ctx, &isdfs);
3599 if (rc)
3600 goto error;
3601 if (!isdfs)
3602 goto out;
3603
3604 /*
3605 * After reconnecting to a different server, unique ids won't match anymore, so we disable
3606 * serverino. This prevents dentry revalidation to think the dentry are stale (ESTALE).
3607 */
3608 cifs_autodisable_serverino(cifs_sb);
3609 /*
3610 * Force the use of prefix path to support failover on DFS paths that resolve to targets
3611 * that have different prefix paths.
3612 */
3613 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_USE_PREFIX_PATH;
3614 kfree(cifs_sb->prepath);
3615 cifs_sb->prepath = ctx->prepath;
3616 ctx->prepath = NULL;
3617
3618 out:
3619 cifs_try_adding_channels(mnt_ctx.ses);
3620 rc = mount_setup_tlink(cifs_sb, mnt_ctx.ses, mnt_ctx.tcon);
3621 if (rc)
3622 goto error;
3623
3624 free_xid(mnt_ctx.xid);
3625 return rc;
3626
3627 error:
3628 cifs_mount_put_conns(&mnt_ctx);
3629 return rc;
3630 }
3631 #else
3632 int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
3633 {
3634 int rc = 0;
3635 struct cifs_mount_ctx mnt_ctx = { .cifs_sb = cifs_sb, .fs_ctx = ctx, };
3636
3637 rc = cifs_mount_get_session(&mnt_ctx);
3638 if (rc)
3639 goto error;
3640
3641 rc = cifs_mount_get_tcon(&mnt_ctx);
3642 if (!rc) {
3643 /*
3644 * Prevent superblock from being created with any missing
3645 * connections.
3646 */
> 3647 if (WARN_ON(!mnt_ctx->server))
3648 rc = -EHOSTDOWN;
3649 else if (WARN_ON(!mnt_ctx->ses))
3650 rc = -EACCES;
3651 else if (WARN_ON(!mnt_ctx->tcon))
3652 rc = -ENOENT;
3653 }
3654 if (rc)
3655 goto error;
3656
3657 rc = cifs_is_path_remote(&mnt_ctx);
3658 if (rc == -EREMOTE)
3659 rc = -EOPNOTSUPP;
3660 if (rc)
3661 goto error;
3662
3663 rc = mount_setup_tlink(cifs_sb, mnt_ctx.ses, mnt_ctx.tcon);
3664 if (rc)
3665 goto error;
3666
3667 free_xid(mnt_ctx.xid);
3668 return rc;
3669
3670 error:
3671 cifs_mount_put_conns(&mnt_ctx);
3672 return rc;
3673 }
3674 #endif
3675
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* [cifs:for-next 3/6] fs/smb/client/connect.c:3647:37: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
@ 2024-04-02 7:18 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-04-02 7:18 UTC (permalink / raw)
To: Paulo Alcantara; +Cc: oe-kbuild-all, linux-cifs, samba-technical, Steve French
tree: git://git.samba.org/sfrench/cifs-2.6.git for-next
head: 0bc54e6a9c31ede9508fb81edbd11983494047ee
commit: 311deca30437896573ce0bf5c302095533041abb [3/6] smb: client: guarantee refcounted children from parent session
config: parisc-defconfig (https://download.01.org/0day-ci/archive/20240402/202404021527.ZlRkIxgv-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240402/202404021527.ZlRkIxgv-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202404021527.ZlRkIxgv-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/linux/bug.h:5,
from include/linux/thread_info.h:13,
from include/asm-generic/preempt.h:5,
from ./arch/parisc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:79,
from include/linux/spinlock.h:56,
from include/linux/wait.h:9,
from include/linux/wait_bit.h:8,
from include/linux/fs.h:6,
from fs/smb/client/connect.c:8:
fs/smb/client/connect.c: In function 'cifs_mount':
>> fs/smb/client/connect.c:3647:37: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
3647 | if (WARN_ON(!mnt_ctx->server))
| ^~
arch/parisc/include/asm/bug.h:86:32: note: in definition of macro 'WARN_ON'
86 | int __ret_warn_on = !!(x); \
| ^
fs/smb/client/connect.c:3649:42: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
3649 | else if (WARN_ON(!mnt_ctx->ses))
| ^~
arch/parisc/include/asm/bug.h:86:32: note: in definition of macro 'WARN_ON'
86 | int __ret_warn_on = !!(x); \
| ^
fs/smb/client/connect.c:3651:42: error: invalid type argument of '->' (have 'struct cifs_mount_ctx')
3651 | else if (WARN_ON(!mnt_ctx->tcon))
| ^~
arch/parisc/include/asm/bug.h:86:32: note: in definition of macro 'WARN_ON'
86 | int __ret_warn_on = !!(x); \
| ^
vim +3647 fs/smb/client/connect.c
3590
3591 #ifdef CONFIG_CIFS_DFS_UPCALL
3592 int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
3593 {
3594 struct cifs_mount_ctx mnt_ctx = { .cifs_sb = cifs_sb, .fs_ctx = ctx, };
3595 bool isdfs;
3596 int rc;
3597
3598 rc = dfs_mount_share(&mnt_ctx, &isdfs);
3599 if (rc)
3600 goto error;
3601 if (!isdfs)
3602 goto out;
3603
3604 /*
3605 * After reconnecting to a different server, unique ids won't match anymore, so we disable
3606 * serverino. This prevents dentry revalidation to think the dentry are stale (ESTALE).
3607 */
3608 cifs_autodisable_serverino(cifs_sb);
3609 /*
3610 * Force the use of prefix path to support failover on DFS paths that resolve to targets
3611 * that have different prefix paths.
3612 */
3613 cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_USE_PREFIX_PATH;
3614 kfree(cifs_sb->prepath);
3615 cifs_sb->prepath = ctx->prepath;
3616 ctx->prepath = NULL;
3617
3618 out:
3619 cifs_try_adding_channels(mnt_ctx.ses);
3620 rc = mount_setup_tlink(cifs_sb, mnt_ctx.ses, mnt_ctx.tcon);
3621 if (rc)
3622 goto error;
3623
3624 free_xid(mnt_ctx.xid);
3625 return rc;
3626
3627 error:
3628 cifs_mount_put_conns(&mnt_ctx);
3629 return rc;
3630 }
3631 #else
3632 int cifs_mount(struct cifs_sb_info *cifs_sb, struct smb3_fs_context *ctx)
3633 {
3634 int rc = 0;
3635 struct cifs_mount_ctx mnt_ctx = { .cifs_sb = cifs_sb, .fs_ctx = ctx, };
3636
3637 rc = cifs_mount_get_session(&mnt_ctx);
3638 if (rc)
3639 goto error;
3640
3641 rc = cifs_mount_get_tcon(&mnt_ctx);
3642 if (!rc) {
3643 /*
3644 * Prevent superblock from being created with any missing
3645 * connections.
3646 */
> 3647 if (WARN_ON(!mnt_ctx->server))
3648 rc = -EHOSTDOWN;
3649 else if (WARN_ON(!mnt_ctx->ses))
3650 rc = -EACCES;
3651 else if (WARN_ON(!mnt_ctx->tcon))
3652 rc = -ENOENT;
3653 }
3654 if (rc)
3655 goto error;
3656
3657 rc = cifs_is_path_remote(&mnt_ctx);
3658 if (rc == -EREMOTE)
3659 rc = -EOPNOTSUPP;
3660 if (rc)
3661 goto error;
3662
3663 rc = mount_setup_tlink(cifs_sb, mnt_ctx.ses, mnt_ctx.tcon);
3664 if (rc)
3665 goto error;
3666
3667 free_xid(mnt_ctx.xid);
3668 return rc;
3669
3670 error:
3671 cifs_mount_put_conns(&mnt_ctx);
3672 return rc;
3673 }
3674 #endif
3675
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-04-02 7:19 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-02 7:08 [cifs:for-next 3/6] fs/smb/client/connect.c:3647:37: error: invalid type argument of '->' (have 'struct cifs_mount_ctx') kernel test robot
2024-04-02 7:18 kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).