Hi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on cifs/for-next]
[also build test ERROR on v5.16-rc1 next-20211115]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url:
https://github.com/0day-ci/linux/commits/cgel-zte-gmail-com/fs-cifs-conve...
base:
git://git.samba.org/sfrench/cifs-2.6.git for-next
config: i386-debian-10.3 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
#
https://github.com/0day-ci/linux/commit/8d0f81fa94784bab585209f6cea84ea63...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
cgel-zte-gmail-com/fs-cifs-convert-from-atomic_t-to-refcount_t-on-tlink-tl_count/20211112-173127
git checkout 8d0f81fa94784bab585209f6cea84ea63a4a37ba
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from fs/cifs/cifsfs.c:33:
fs/cifs/cifsglob.h: In function 'cifs_get_tlink':
> fs/cifs/cifsglob.h:1156:14: error: passing argument 1 of
'atomic_inc' from incompatible pointer type [-Werror=incompatible-pointer-types]
1156 | atomic_inc(&tlink->tl_count);
| ^~~~~~~~~~~~~~~~
| |
| refcount_t * {aka struct refcount_struct *}
In file included from include/linux/atomic.h:82,
from include/linux/cpumask.h:13,
from arch/x86/include/asm/cpumask.h:5,
from arch/x86/include/asm/msr.h:11,
from arch/x86/include/asm/processor.h:22,
from arch/x86/include/asm/timex.h:5,
from include/linux/timex.h:65,
from include/linux/time32.h:13,
from include/linux/time.h:60,
from include/linux/stat.h:19,
from include/linux/module.h:13,
from fs/cifs/cifsfs.c:13:
include/linux/atomic/atomic-instrumented.h:179:22: note: expected 'atomic_t *'
{aka 'struct <anonymous> *'} but argument is of type 'refcount_t *'
{aka 'struct refcount_struct *'}
179 | atomic_inc(atomic_t *v)
| ~~~~~~~~~~^
cc1: some warnings being treated as errors
--
In file included from fs/cifs/connect.c:36:
fs/cifs/cifsglob.h: In function 'cifs_get_tlink':
> fs/cifs/cifsglob.h:1156:14: error: passing argument 1 of
'atomic_inc' from incompatible pointer type [-Werror=incompatible-pointer-types]
1156 | atomic_inc(&tlink->tl_count);
| ^~~~~~~~~~~~~~~~
| |
| refcount_t * {aka struct refcount_struct *}
In file included from include/linux/atomic.h:82,
from include/linux/cpumask.h:13,
from arch/x86/include/asm/cpumask.h:5,
from arch/x86/include/asm/msr.h:11,
from arch/x86/include/asm/processor.h:22,
from arch/x86/include/asm/cpufeature.h:5,
from arch/x86/include/asm/thread_info.h:53,
from include/linux/thread_info.h:60,
from arch/x86/include/asm/preempt.h:7,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:55,
from include/linux/wait.h:9,
from include/linux/wait_bit.h:8,
from include/linux/fs.h:6,
from fs/cifs/connect.c:8:
include/linux/atomic/atomic-instrumented.h:179:22: note: expected 'atomic_t *'
{aka 'struct <anonymous> *'} but argument is of type 'refcount_t *'
{aka 'struct refcount_struct *'}
179 | atomic_inc(atomic_t *v)
| ~~~~~~~~~~^
fs/cifs/connect.c: In function 'cifs_prune_tlinks':
> fs/cifs/connect.c:4053:19: error: passing argument 1 of
'atomic_read' from incompatible pointer type [-Werror=incompatible-pointer-types]
4053 | atomic_read(&tlink->tl_count) != 0 ||
| ^~~~~~~~~~~~~~~~
| |
| refcount_t * {aka struct refcount_struct *}
In file included from include/linux/atomic.h:82,
from include/linux/cpumask.h:13,
from arch/x86/include/asm/cpumask.h:5,
from arch/x86/include/asm/msr.h:11,
from arch/x86/include/asm/processor.h:22,
from arch/x86/include/asm/cpufeature.h:5,
from arch/x86/include/asm/thread_info.h:53,
from include/linux/thread_info.h:60,
from arch/x86/include/asm/preempt.h:7,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:55,
from include/linux/wait.h:9,
from include/linux/wait_bit.h:8,
from include/linux/fs.h:6,
from fs/cifs/connect.c:8:
include/linux/atomic/atomic-instrumented.h:25:29: note: expected 'const atomic_t
*' {aka 'const struct <anonymous> *'} but argument is of type
'refcount_t *' {aka 'struct refcount_struct *'}
25 | atomic_read(const atomic_t *v)
| ~~~~~~~~~~~~~~~~^
cc1: some warnings being treated as errors
vim +/atomic_inc +1156 fs/cifs/cifsglob.h
7ffec372458d16 Jeff Layton 2010-09-29 1151
13cfb7334eb6fd Jeff Layton 2010-09-29 1152 static inline struct tcon_link *
13cfb7334eb6fd Jeff Layton 2010-09-29 1153 cifs_get_tlink(struct tcon_link *tlink)
13cfb7334eb6fd Jeff Layton 2010-09-29 1154 {
9d002df492b14c Jeff Layton 2010-10-06 1155 if (tlink && !IS_ERR(tlink))
9d002df492b14c Jeff Layton 2010-10-06 @1156 atomic_inc(&tlink->tl_count);
13cfb7334eb6fd Jeff Layton 2010-09-29 1157 return tlink;
13cfb7334eb6fd Jeff Layton 2010-09-29 1158 }
13cfb7334eb6fd Jeff Layton 2010-09-29 1159
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org