• Jason Gunthorpe's avatar
    RDMA/siw: Fix DEFINE_PER_CPU compilation when ARCH_NEEDS_WEAK_PER_CPU · 4c7d6dcd
    Jason Gunthorpe authored
    The initializer for the variable cannot be inside the macro (and zero
    initialization isn't needed anyhow).
    
    include/linux/percpu-defs.h:92:33: warning: '__pcpu_unique_use_cnt' initialized and declared 'extern'
      extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name;  \
                                     ^~~~~~~~~~~~~~
    include/linux/percpu-defs.h:115:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
      DEFINE_PER_CPU_SECTION(type, name, "")
      ^~~~~~~~~~~~~~~~~~~~~~
    drivers/infiniband/sw/siw/siw_main.c:129:8: note: in expansion of macro 'DEFINE_PER_CPU'
     static DEFINE_PER_CPU(atomic_t, use_cnt = ATOMIC_INIT(0));
            ^~~~~~~~~~~~~~
    
    Also the rules for PER_CPU require the variable names to be globally
    unique, so prefix them with siw_
    
    Fixes: b9be6f18 ("rdma/siw: transmit path")
    Fixes: bdcf26bf ("rdma/siw: network and RDMA core interface")
    Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
    4c7d6dcd
siw_main.c 16.3 KB