• A
    workqueue: avoid clang warning · a45463cb
    Arnd Bergmann 提交于
    Building with clang shows lots of warning like:
    
    drivers/amba/bus.c:447:8: warning: implicit conversion from 'long long' to 'int' changes value from 4294967248 to -48
          [-Wconstant-conversion]
    static DECLARE_DELAYED_WORK(deferred_retry_work, amba_deferred_retry_func);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/workqueue.h:187:26: note: expanded from macro 'DECLARE_DELAYED_WORK'
            struct delayed_work n = __DELAYED_WORK_INITIALIZER(n, f, 0)
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/workqueue.h:177:10: note: expanded from macro '__DELAYED_WORK_INITIALIZER'
            .work = __WORK_INITIALIZER((n).work, (f)),                      \
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    include/linux/workqueue.h:170:10: note: expanded from macro '__WORK_INITIALIZER'
            .data = WORK_DATA_STATIC_INIT(),                                \
                    ^~~~~~~~~~~~~~~~~~~~~~~
    include/linux/workqueue.h:111:39: note: expanded from macro 'WORK_DATA_STATIC_INIT'
            ATOMIC_LONG_INIT(WORK_STRUCT_NO_POOL | WORK_STRUCT_STATIC)
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
    include/asm-generic/atomic-long.h:32:41: note: expanded from macro 'ATOMIC_LONG_INIT'
     #define ATOMIC_LONG_INIT(i)     ATOMIC_INIT(i)
                                    ~~~~~~~~~~~~^~
    arch/arm/include/asm/atomic.h:21:27: note: expanded from macro 'ATOMIC_INIT'
     #define ATOMIC_INIT(i)  { (i) }
                            ~  ^
    
    This makes the type cast explicit, which shuts up the warning.
    Signed-off-by: NArnd Bergmann <arnd@arndb.de>
    Signed-off-by: NTejun Heo <tj@kernel.org>
    a45463cb
workqueue.h 20.7 KB