[staging:staging-testing 168/347] arch/frv/include/asm/atomic.h:186:1: note: in expansion of macro 'ATOMIC_OP'

kbuild test robot fengguang.wu at intel.com
Mon Aug 22 08:22:12 UTC 2016


tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-testing
head:   f5a9a15f8fd4168e415e94f5dce367f3cef08e03
commit: d806f30e639b0ff5abeb012b08932691be795342 [168/347] staging: lustre: osc: revise unstable pages accounting
config: frv-allmodconfig (attached as .config)
compiler: frv-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout d806f30e639b0ff5abeb012b08932691be795342
        # save the attached .config to linux build tree
        make.cross ARCH=frv 

All warnings (new ones prefixed by >>):

   In file included from arch/frv/include/asm/bitops.h:28:0,
                    from include/linux/bitops.h:36,
                    from drivers/staging/lustre/lustre/osc/../../include/linux/libcfs/linux/libcfs.h:40,
                    from drivers/staging/lustre/lustre/osc/../../include/linux/libcfs/libcfs.h:36,
                    from drivers/staging/lustre/lustre/osc/osc_cl_internal.h:45,
                    from drivers/staging/lustre/lustre/osc/osc_page.c:40:
   drivers/staging/lustre/lustre/osc/osc_page.c: In function 'osc_dec_unstable_pages':
   arch/frv/include/asm/atomic.h:171:2: warning: array subscript is above array bounds [-Warray-bounds]
     (void)__atomic32_fetch_##op(i, &v->counter);   \
     ^
>> arch/frv/include/asm/atomic.h:186:1: note: in expansion of macro 'ATOMIC_OP'
    ATOMIC_OP(add)
    ^
   arch/frv/include/asm/atomic.h:171:2: warning: array subscript is above array bounds [-Warray-bounds]
     (void)__atomic32_fetch_##op(i, &v->counter);   \
     ^
>> arch/frv/include/asm/atomic.h:186:1: note: in expansion of macro 'ATOMIC_OP'
    ATOMIC_OP(add)
    ^
   drivers/staging/lustre/lustre/osc/osc_page.c: In function 'osc_inc_unstable_pages':
   arch/frv/include/asm/atomic.h:171:2: warning: array subscript is above array bounds [-Warray-bounds]
     (void)__atomic32_fetch_##op(i, &v->counter);   \
     ^
>> arch/frv/include/asm/atomic.h:186:1: note: in expansion of macro 'ATOMIC_OP'
    ATOMIC_OP(add)
    ^
   arch/frv/include/asm/atomic.h:171:2: warning: array subscript is above array bounds [-Warray-bounds]
     (void)__atomic32_fetch_##op(i, &v->counter);   \
     ^
>> arch/frv/include/asm/atomic.h:186:1: note: in expansion of macro 'ATOMIC_OP'
    ATOMIC_OP(add)
    ^
   /tmp/ccddFWC4.s: Assembler messages:
   /tmp/ccddFWC4.s:28583: Error: symbol `.LSLT0' is already defined
   /tmp/ccddFWC4.s:28586: Error: symbol `.LASLTP0' is already defined
   /tmp/ccddFWC4.s:28985: Error: symbol `.LELTP0' is already defined
   /tmp/ccddFWC4.s:28986: Error: symbol `.LELT0' is already defined

vim +/ATOMIC_OP +186 arch/frv/include/asm/atomic.h

d9c73028 Peter Zijlstra 2016-04-18  165  static inline int atomic_fetch_##op(int i, atomic_t *v)			\
d9c73028 Peter Zijlstra 2016-04-18  166  {									\
d9c73028 Peter Zijlstra 2016-04-18  167  	return __atomic32_fetch_##op(i, &v->counter);			\
d9c73028 Peter Zijlstra 2016-04-18  168  }									\
b0d8003e Peter Zijlstra 2015-04-24  169  static inline void atomic_##op(int i, atomic_t *v)			\
b0d8003e Peter Zijlstra 2015-04-24  170  {									\
b0d8003e Peter Zijlstra 2015-04-24 @171  	(void)__atomic32_fetch_##op(i, &v->counter);			\
b0d8003e Peter Zijlstra 2015-04-24  172  }									\
b0d8003e Peter Zijlstra 2015-04-24  173  									\
d9c73028 Peter Zijlstra 2016-04-18  174  static inline long long atomic64_fetch_##op(long long i, atomic64_t *v)	\
d9c73028 Peter Zijlstra 2016-04-18  175  {									\
d9c73028 Peter Zijlstra 2016-04-18  176  	return __atomic64_fetch_##op(i, &v->counter);			\
d9c73028 Peter Zijlstra 2016-04-18  177  }									\
b0d8003e Peter Zijlstra 2015-04-24  178  static inline void atomic64_##op(long long i, atomic64_t *v)		\
b0d8003e Peter Zijlstra 2015-04-24  179  {									\
b0d8003e Peter Zijlstra 2015-04-24  180  	(void)__atomic64_fetch_##op(i, &v->counter);			\
b0d8003e Peter Zijlstra 2015-04-24  181  }
b0d8003e Peter Zijlstra 2015-04-24  182  
b0d8003e Peter Zijlstra 2015-04-24  183  ATOMIC_OP(or)
b0d8003e Peter Zijlstra 2015-04-24  184  ATOMIC_OP(and)
b0d8003e Peter Zijlstra 2015-04-24  185  ATOMIC_OP(xor)
d9c73028 Peter Zijlstra 2016-04-18 @186  ATOMIC_OP(add)
d9c73028 Peter Zijlstra 2016-04-18  187  ATOMIC_OP(sub)
b0d8003e Peter Zijlstra 2015-04-24  188  
b0d8003e Peter Zijlstra 2015-04-24  189  #undef ATOMIC_OP

:::::: The code at line 186 was first introduced by commit
:::::: d9c730281617e55ca470e66f8e9d7d3f5f420fec locking/atomic, arch/frv: Implement atomic{,64}_fetch_{add,sub,and,or,xor}()

:::::: TO: Peter Zijlstra <peterz at infradead.org>
:::::: CC: Ingo Molnar <mingo at kernel.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/octet-stream
Size: 44969 bytes
Desc: not available
URL: <http://driverdev.linuxdriverproject.org/pipermail/driverdev-devel/attachments/20160822/44e0e1b3/attachment-0001.obj>


More information about the devel mailing list