• A
    net: simplify napi_synchronize() to avoid warnings · facc432f
    Arnd Bergmann 提交于
    The napi_synchronize() function is defined twice: The definition
    for SMP builds waits for other CPUs to be done, while the uniprocessor
    variant just contains a barrier and ignores its argument.
    
    In the mvneta driver, this leads to a warning about an unused variable
    when we lookup the NAPI struct of another CPU and then don't use it:
    
    ethernet/marvell/mvneta.c: In function 'mvneta_percpu_notifier':
    ethernet/marvell/mvneta.c:2910:30: error: unused variable 'other_port' [-Werror=unused-variable]
    
    There are no other CPUs on a UP build, so that code never runs, but
    gcc does not know this.
    
    The nicest solution seems to be to turn the napi_synchronize() helper
    into an inline function for the UP case as well, as that leads gcc to
    not complain about the argument being unused. Once we do that, we can
    also combine the two cases into a single function definition and use
    if(IS_ENABLED()) rather than #ifdef to make it look a bit nicer.
    
    The warning first came up in linux-4.4, but I failed to catch it
    earlier.
    Signed-off-by: NArnd Bergmann <arnd@arndb.de>
    Fixes: f8642885 ("net: mvneta: Statically assign queues to CPUs")
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    facc432f
netdevice.h 128.6 KB