lkml.org 
[lkml]   [2017]   [Jan]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/2] m68k: replaced gcc specific macros with ones from compiler.h
    Hi Gideon,

    [auto build test ERROR on m68k/for-next]
    [also build test ERROR on v4.10-rc5 next-20170124]
    [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

    url: https://github.com/0day-ci/linux/commits/Gideon-Israel-Dsouza/compiler-gcc-h-Added-new-macro-for-gcc-attribute/20170125-025425
    base: https://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k.git for-next
    config: m68k-allmodconfig (attached as .config)
    compiler: m68k-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
    # save the attached .config to linux build tree
    make.cross ARCH=m68k

    All error/warnings (new ones prefixed by >>):

    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    include/linux/moduleparam.h:146:36: error: parameter '__param_str_major_num' is initialized
    param_check_##type(name, &(value)); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    include/linux/moduleparam.h:221:49: error: storage class specified for parameter '__param_major_num'
    static struct kernel_param __moduleparam_const __param_##name \
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    include/linux/moduleparam.h:221:16: error: parameter '__param_major_num' is initialized
    static struct kernel_param __moduleparam_const __param_##name \
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    include/linux/moduleparam.h:221:16: warning: '__used__' attribute ignored [-Wattributes]
    static struct kernel_param __moduleparam_const __param_##name \
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    include/linux/moduleparam.h:221:49: error: section attribute not allowed for '__param_major_num'
    static struct kernel_param __moduleparam_const __param_##name \
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    include/linux/moduleparam.h:221:49: error: alignment may not be specified for '__param_major_num'
    static struct kernel_param __moduleparam_const __param_##name \
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    In file included from include/uapi/linux/stddef.h:1:0,
    from include/linux/stddef.h:4,
    from include/uapi/linux/posix_types.h:4,
    from include/uapi/linux/types.h:13,
    from include/linux/types.h:5,
    from include/linux/list.h:4,
    from include/linux/module.h:9,
    from arch/m68k/emu/nfblock.c:9:
    >> include/linux/compiler-gcc.h:183:45: error: storage class specified for parameter '__UNIQUE_ID_major_numtype34'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:52:23: note: in definition of macro '___PASTE'
    #define ___PASTE(a,b) a##b
    ^
    include/linux/compiler-gcc.h:183:29: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:53:22: note: in expansion of macro '___PASTE'
    #define __PASTE(a,b) ___PASTE(a,b)
    ^
    include/linux/compiler-gcc.h:183:37: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/moduleparam.h:21:19: note: in expansion of macro '__UNIQUE_ID'
    static const char __UNIQUE_ID(name)[] \
    ^
    include/linux/moduleparam.h:30:3: note: in expansion of macro '__MODULE_INFO'
    __MODULE_INFO(parmtype, name##type, #name ":" _type)
    ^
    include/linux/moduleparam.h:148:2: note: in expansion of macro '__MODULE_PARM_TYPE'
    __MODULE_PARM_TYPE(name, #type)
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    In file included from include/linux/thread_info.h:11:0,
    from include/asm-generic/preempt.h:4,
    from ./arch/m68k/include/generated/asm/preempt.h:1,
    from include/linux/preempt.h:59,
    from include/linux/spinlock.h:50,
    from include/linux/seqlock.h:35,
    from include/linux/time.h:5,
    from include/linux/stat.h:18,
    from include/linux/module.h:10,
    from arch/m68k/emu/nfblock.c:9:
    >> include/linux/bug.h:37:45: error: parameter '__UNIQUE_ID_major_numtype34' is initialized
    #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); }))
    ^
    include/linux/kernel.h:854:3: note: in expansion of macro 'BUILD_BUG_ON_ZERO'
    BUILD_BUG_ON_ZERO((perms) & 2) + \
    ^
    >> include/linux/moduleparam.h:225:6: note: in expansion of macro 'VERIFY_OCTAL_PERMISSIONS'
    VERIFY_OCTAL_PERMISSIONS(perm), level, flags, { arg } }
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    >> include/linux/bug.h:37:45: warning: '__used__' attribute ignored [-Wattributes]
    #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); }))
    ^
    include/linux/kernel.h:854:3: note: in expansion of macro 'BUILD_BUG_ON_ZERO'
    BUILD_BUG_ON_ZERO((perms) & 2) + \
    ^
    >> include/linux/moduleparam.h:225:6: note: in expansion of macro 'VERIFY_OCTAL_PERMISSIONS'
    VERIFY_OCTAL_PERMISSIONS(perm), level, flags, { arg } }
    ^
    include/linux/moduleparam.h:167:2: note: in expansion of macro '__module_param_call'
    __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, 0)
    ^
    include/linux/moduleparam.h:147:2: note: in expansion of macro 'module_param_cb'
    module_param_cb(name, &param_ops_##type, &value, perm); \
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    In file included from include/uapi/linux/stddef.h:1:0,
    from include/linux/stddef.h:4,
    from include/uapi/linux/posix_types.h:4,
    from include/uapi/linux/types.h:13,
    from include/linux/types.h:5,
    from include/linux/list.h:4,
    from include/linux/module.h:9,
    from arch/m68k/emu/nfblock.c:9:
    >> include/linux/compiler-gcc.h:183:45: error: section attribute not allowed for '__UNIQUE_ID_major_numtype34'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:52:23: note: in definition of macro '___PASTE'
    #define ___PASTE(a,b) a##b
    ^
    include/linux/compiler-gcc.h:183:29: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:53:22: note: in expansion of macro '___PASTE'
    #define __PASTE(a,b) ___PASTE(a,b)
    ^
    include/linux/compiler-gcc.h:183:37: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/moduleparam.h:21:19: note: in expansion of macro '__UNIQUE_ID'
    static const char __UNIQUE_ID(name)[] \
    ^
    include/linux/moduleparam.h:30:3: note: in expansion of macro '__MODULE_INFO'
    __MODULE_INFO(parmtype, name##type, #name ":" _type)
    ^
    include/linux/moduleparam.h:148:2: note: in expansion of macro '__MODULE_PARM_TYPE'
    __MODULE_PARM_TYPE(name, #type)
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    >> include/linux/compiler-gcc.h:183:45: error: alignment may not be specified for '__UNIQUE_ID_major_numtype34'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:52:23: note: in definition of macro '___PASTE'
    #define ___PASTE(a,b) a##b
    ^
    include/linux/compiler-gcc.h:183:29: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:53:22: note: in expansion of macro '___PASTE'
    #define __PASTE(a,b) ___PASTE(a,b)
    ^
    include/linux/compiler-gcc.h:183:37: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/moduleparam.h:21:19: note: in expansion of macro '__UNIQUE_ID'
    static const char __UNIQUE_ID(name)[] \
    ^
    include/linux/moduleparam.h:30:3: note: in expansion of macro '__MODULE_INFO'
    __MODULE_INFO(parmtype, name##type, #name ":" _type)
    ^
    include/linux/moduleparam.h:148:2: note: in expansion of macro '__MODULE_PARM_TYPE'
    __MODULE_PARM_TYPE(name, #type)
    ^
    include/linux/moduleparam.h:126:2: note: in expansion of macro 'module_param_named'
    module_param_named(name, name, type, perm)
    ^
    arch/m68k/emu/nfblock.c:51:1: note: in expansion of macro 'module_param'
    module_param(major_num, int, 0);
    ^
    arch/m68k/emu/nfblock.c:53:1: warning: empty declaration
    struct nfhd_device {
    ^
    arch/m68k/emu/nfblock.c:63:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    {
    ^
    arch/m68k/emu/nfblock.c:84:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    {
    ^
    arch/m68k/emu/nfblock.c:94:45: error: storage class specified for parameter 'nfhd_ops'
    static const struct block_device_operations nfhd_ops = {
    ^
    arch/m68k/emu/nfblock.c:94:21: error: parameter 'nfhd_ops' is initialized
    static const struct block_device_operations nfhd_ops = {
    ^
    arch/m68k/emu/nfblock.c:96:12: error: 'nfhd_getgeo' undeclared (first use in this function)
    .getgeo = nfhd_getgeo,
    ^
    arch/m68k/emu/nfblock.c:96:12: note: each undeclared identifier is reported only once for each function it appears in
    arch/m68k/emu/nfblock.c:100:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    {
    ^
    arch/m68k/emu/nfblock.c:156:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    {
    ^
    arch/m68k/emu/nfblock.c:180:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    {
    ^
    In file included from arch/m68k/emu/nfblock.c:9:0:
    include/linux/module.h:131:2: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    { return initfn; } \
    ^
    arch/m68k/emu/nfblock.c:193:1: note: in expansion of macro 'module_init'
    module_init(nfhd_init);
    ^
    include/linux/module.h:131:2: warning: 'alias' attribute ignored [-Wattributes]
    { return initfn; } \
    ^
    arch/m68k/emu/nfblock.c:193:1: note: in expansion of macro 'module_init'
    module_init(nfhd_init);
    ^
    arch/m68k/emu/nfblock.c:193:23: error: expected declaration specifiers before ';' token
    module_init(nfhd_init);
    ^
    In file included from arch/m68k/emu/nfblock.c:9:0:
    include/linux/module.h:137:2: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
    { return exitfn; } \
    ^
    arch/m68k/emu/nfblock.c:194:1: note: in expansion of macro 'module_exit'
    module_exit(nfhd_exit);
    ^
    include/linux/module.h:137:2: warning: 'alias' attribute ignored [-Wattributes]
    { return exitfn; } \
    ^
    arch/m68k/emu/nfblock.c:194:1: note: in expansion of macro 'module_exit'
    module_exit(nfhd_exit);
    ^
    arch/m68k/emu/nfblock.c:194:23: error: expected declaration specifiers before ';' token
    module_exit(nfhd_exit);
    ^
    In file included from include/uapi/linux/stddef.h:1:0,
    from include/linux/stddef.h:4,
    from include/uapi/linux/posix_types.h:4,
    from include/uapi/linux/types.h:13,
    from include/linux/types.h:5,
    from include/linux/list.h:4,
    from include/linux/module.h:9,
    from arch/m68k/emu/nfblock.c:9:
    >> include/linux/compiler-gcc.h:183:45: error: storage class specified for parameter '__UNIQUE_ID_license37'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:52:23: note: in definition of macro '___PASTE'
    #define ___PASTE(a,b) a##b
    ^
    include/linux/compiler-gcc.h:183:29: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:53:22: note: in expansion of macro '___PASTE'
    #define __PASTE(a,b) ___PASTE(a,b)
    ^
    include/linux/compiler-gcc.h:183:37: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/moduleparam.h:21:19: note: in expansion of macro '__UNIQUE_ID'
    static const char __UNIQUE_ID(name)[] \
    ^
    include/linux/module.h:161:32: note: in expansion of macro '__MODULE_INFO'
    #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
    ^
    include/linux/module.h:199:34: note: in expansion of macro 'MODULE_INFO'
    #define MODULE_LICENSE(_license) MODULE_INFO(license, _license)
    ^
    arch/m68k/emu/nfblock.c:196:1: note: in expansion of macro 'MODULE_LICENSE'
    MODULE_LICENSE("GPL");
    ^
    >> arch/m68k/emu/nfblock.c:196:1: error: parameter '__UNIQUE_ID_license37' is initialized
    arch/m68k/emu/nfblock.c:196:1: warning: '__used__' attribute ignored [-Wattributes]
    In file included from include/uapi/linux/stddef.h:1:0,
    from include/linux/stddef.h:4,
    from include/uapi/linux/posix_types.h:4,
    from include/uapi/linux/types.h:13,
    from include/linux/types.h:5,
    from include/linux/list.h:4,
    from include/linux/module.h:9,
    from arch/m68k/emu/nfblock.c:9:
    >> include/linux/compiler-gcc.h:183:45: error: section attribute not allowed for '__UNIQUE_ID_license37'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:52:23: note: in definition of macro '___PASTE'
    #define ___PASTE(a,b) a##b
    ^
    include/linux/compiler-gcc.h:183:29: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:53:22: note: in expansion of macro '___PASTE'
    #define __PASTE(a,b) ___PASTE(a,b)
    ^
    include/linux/compiler-gcc.h:183:37: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/moduleparam.h:21:19: note: in expansion of macro '__UNIQUE_ID'
    static const char __UNIQUE_ID(name)[] \
    ^
    include/linux/module.h:161:32: note: in expansion of macro '__MODULE_INFO'
    #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
    ^
    include/linux/module.h:199:34: note: in expansion of macro 'MODULE_INFO'
    #define MODULE_LICENSE(_license) MODULE_INFO(license, _license)
    ^
    arch/m68k/emu/nfblock.c:196:1: note: in expansion of macro 'MODULE_LICENSE'
    MODULE_LICENSE("GPL");
    ^
    >> include/linux/compiler-gcc.h:183:45: error: alignment may not be specified for '__UNIQUE_ID_license37'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:52:23: note: in definition of macro '___PASTE'
    #define ___PASTE(a,b) a##b
    ^
    include/linux/compiler-gcc.h:183:29: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/compiler.h:53:22: note: in expansion of macro '___PASTE'
    #define __PASTE(a,b) ___PASTE(a,b)
    ^
    include/linux/compiler-gcc.h:183:37: note: in expansion of macro '__PASTE'
    #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    ^
    include/linux/moduleparam.h:21:19: note: in expansion of macro '__UNIQUE_ID'
    static const char __UNIQUE_ID(name)[] \
    ^
    include/linux/module.h:161:32: note: in expansion of macro '__MODULE_INFO'
    #define MODULE_INFO(tag, info) __MODULE_INFO(tag, tag, info)
    ^
    include/linux/module.h:199:34: note: in expansion of macro 'MODULE_INFO'
    #define MODULE_LICENSE(_license) MODULE_INFO(license, _license)
    ^
    arch/m68k/emu/nfblock.c:196:1: note: in expansion of macro 'MODULE_LICENSE'
    MODULE_LICENSE("GPL");
    ^
    In file included from arch/m68k/emu/nfblock.c:21:0:
    arch/m68k/include/asm/natfeat.h:20:6: error: old-style parameter declarations in prototyped function definition
    void nfprint(const char *fmt, ...)
    ^
    >> arch/m68k/emu/nfblock.c:196:1: error: expected '{' at end of input
    MODULE_LICENSE("GPL");
    ^
    ..

    vim +/__UNIQUE_ID_major_numtype34 +183 include/linux/compiler-gcc.h

    cb984d10 Joe Perches 2015-06-25 167 /* Mark functions as cold. gcc will assume any path leading to a call
    cb984d10 Joe Perches 2015-06-25 168 * to them will be unlikely. This means a lot of manual unlikely()s
    cb984d10 Joe Perches 2015-06-25 169 * are unnecessary now for any paths leading to the usual suspects
    cb984d10 Joe Perches 2015-06-25 170 * like BUG(), printk(), panic() etc. [but let's keep them for now for
    cb984d10 Joe Perches 2015-06-25 171 * older compilers]
    cb984d10 Joe Perches 2015-06-25 172 *
    cb984d10 Joe Perches 2015-06-25 173 * Early snapshots of gcc 4.3 don't support this and we can't detect this
    cb984d10 Joe Perches 2015-06-25 174 * in the preprocessor, but we can live with this because they're unreleased.
    cb984d10 Joe Perches 2015-06-25 175 * Maketime probing would be overkill here.
    cb984d10 Joe Perches 2015-06-25 176 *
    cb984d10 Joe Perches 2015-06-25 177 * gcc also has a __attribute__((__hot__)) to move hot functions into
    cb984d10 Joe Perches 2015-06-25 178 * a special section, but I don't see any sense in this right now in
    cb984d10 Joe Perches 2015-06-25 179 * the kernel context
    cb984d10 Joe Perches 2015-06-25 180 */
    cb984d10 Joe Perches 2015-06-25 181 #define __cold __attribute__((__cold__))
    cb984d10 Joe Perches 2015-06-25 182
    cb984d10 Joe Perches 2015-06-25 @183 #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
    cb984d10 Joe Perches 2015-06-25 184
    cb984d10 Joe Perches 2015-06-25 185 #ifndef __CHECKER__
    cb984d10 Joe Perches 2015-06-25 186 # define __compiletime_warning(message) __attribute__((warning(message)))
    cb984d10 Joe Perches 2015-06-25 187 # define __compiletime_error(message) __attribute__((error(message)))
    cb984d10 Joe Perches 2015-06-25 188 #endif /* __CHECKER__ */
    cb984d10 Joe Perches 2015-06-25 189 #endif /* GCC_VERSION >= 40300 */
    cb984d10 Joe Perches 2015-06-25 190
    cb984d10 Joe Perches 2015-06-25 191 #if GCC_VERSION >= 40500

    :::::: The code at line 183 was first introduced by commit
    :::::: cb984d101b30eb7478d32df56a0023e4603cba7f compiler-gcc: integrate the various compiler-gcc[345].h files

    :::::: TO: Joe Perches <joe@perches.com>
    :::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

    ---
    0-DAY kernel test infrastructure Open Source Technology Center
    https://lists.01.org/pipermail/kbuild-all Intel Corporation
    [unhandled content-type:application/gzip]
    \
     
     \ /
      Last update: 2017-01-25 07:48    [W:2.718 / U:0.616 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site