[linux-next:master 11895/11991] include/linux/page_idle.h:139:0: error: unterminated argument list invoking macro "if"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   66c198deda3725c57939c6cdaf2c9f5375cd79ad
commit: 38c4fffbad3cbfc55e9e69d5e304c82baced199a [11895/11991] mm: check the return value of lookup_page_ext for all call sites
config: i386-randconfig-h1-05241552 (attached as .config)
compiler: gcc-6 (Debian 6.1.1-1) 6.1.1 20160430
reproduce:
        git checkout 38c4fffbad3cbfc55e9e69d5e304c82baced199a
        # save the attached .config to linux build tree
        make ARCH=i386 

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

   In file included from mm/migrate.c:40:0:
   include/linux/page_idle.h: In function 'page_is_young':
>> include/linux/page_idle.h:139:0: error: unterminated argument list invoking macro "if"
    #endif /* _LINUX_MM_PAGE_IDLE_H */
    
   In file included from mm/migrate.c:41:0:
>> include/linux/page_owner.h:7:1: error: expected '(' before 'extern'
    extern struct static_key_false page_owner_inited;
    ^~~~~~
>> include/linux/page_owner.h:8:1: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    extern struct page_ext_operations page_owner_ops;
    ^~~~~~
>> include/linux/page_owner.h:18:20: error: invalid storage class for function 'reset_page_owner'
    static inline void reset_page_owner(struct page *page, unsigned int order)
                       ^~~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:4:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from include/linux/migrate.h:4,
                    from mm/migrate.c:15:
   include/linux/page_owner.h: In function 'reset_page_owner':
>> include/linux/page_owner.h:20:30: error: 'page_owner_inited' undeclared (first use in this function)
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
>> include/linux/page_owner.h:20:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
>> include/linux/jump_label.h:347:2: note: in expansion of macro 'if'
     if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
     ^~
>> include/linux/page_owner.h:20:6: note: in expansion of macro 'static_branch_unlikely'
     if (static_branch_unlikely(&page_owner_inited))
         ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/page_owner.h:20:30: note: each undeclared identifier is reported only once for each function it appears in
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
>> include/linux/page_owner.h:20:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
>> include/linux/jump_label.h:347:2: note: in expansion of macro 'if'
     if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
     ^~
>> include/linux/page_owner.h:20:6: note: in expansion of macro 'static_branch_unlikely'
     if (static_branch_unlikely(&page_owner_inited))
         ^~~~~~~~~~~~~~~~~~~~~~
   In file included from mm/migrate.c:41:0:
   include/linux/page_owner.h: In function 'page_is_young':
>> include/linux/page_owner.h:24:20: error: invalid storage class for function 'set_page_owner'
    static inline void set_page_owner(struct page *page,
                       ^~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:4:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from include/linux/migrate.h:4,
                    from mm/migrate.c:15:
   include/linux/page_owner.h: In function 'set_page_owner':
   include/linux/page_owner.h:27:30: error: 'page_owner_inited' undeclared (first use in this function)
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   include/linux/page_owner.h:27:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
>> include/linux/jump_label.h:347:2: note: in expansion of macro 'if'
     if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
     ^~
   include/linux/page_owner.h:27:6: note: in expansion of macro 'static_branch_unlikely'
     if (static_branch_unlikely(&page_owner_inited))
         ^~~~~~~~~~~~~~~~~~~~~~
   In file included from mm/migrate.c:41:0:
   include/linux/page_owner.h: In function 'page_is_young':
>> include/linux/page_owner.h:31:21: error: invalid storage class for function 'get_page_owner_gfp'
    static inline gfp_t get_page_owner_gfp(struct page *page)
                        ^~~~~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:4:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from include/linux/migrate.h:4,
                    from mm/migrate.c:15:
   include/linux/page_owner.h: In function 'get_page_owner_gfp':
   include/linux/page_owner.h:33:30: error: 'page_owner_inited' undeclared (first use in this function)
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   include/linux/page_owner.h:33:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
>> include/linux/jump_label.h:347:2: note: in expansion of macro 'if'
     if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
     ^~
   include/linux/page_owner.h:33:6: note: in expansion of macro 'static_branch_unlikely'
     if (static_branch_unlikely(&page_owner_inited))
         ^~~~~~~~~~~~~~~~~~~~~~
   In file included from mm/migrate.c:41:0:
   include/linux/page_owner.h: In function 'page_is_young':
>> include/linux/page_owner.h:38:20: error: invalid storage class for function 'copy_page_owner'
    static inline void copy_page_owner(struct page *oldpage, struct page *newpage)
                       ^~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:4:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from include/linux/migrate.h:4,
                    from mm/migrate.c:15:
   include/linux/page_owner.h: In function 'copy_page_owner':
   include/linux/page_owner.h:40:30: error: 'page_owner_inited' undeclared (first use in this function)
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   include/linux/page_owner.h:40:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
>> include/linux/jump_label.h:347:2: note: in expansion of macro 'if'
     if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
     ^~
   include/linux/page_owner.h:40:6: note: in expansion of macro 'static_branch_unlikely'
     if (static_branch_unlikely(&page_owner_inited))
         ^~~~~~~~~~~~~~~~~~~~~~
   In file included from mm/migrate.c:41:0:
   include/linux/page_owner.h: In function 'page_is_young':
>> include/linux/page_owner.h:43:20: error: invalid storage class for function 'set_page_owner_migrate_reason'
    static inline void set_page_owner_migrate_reason(struct page *page, int reason)
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:4:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from include/linux/migrate.h:4,
                    from mm/migrate.c:15:
   include/linux/page_owner.h: In function 'set_page_owner_migrate_reason':
   include/linux/page_owner.h:45:30: error: 'page_owner_inited' undeclared (first use in this function)
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   include/linux/page_owner.h:45:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
>> include/linux/jump_label.h:347:2: note: in expansion of macro 'if'
     if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
     ^~
   include/linux/page_owner.h:45:6: note: in expansion of macro 'static_branch_unlikely'
     if (static_branch_unlikely(&page_owner_inited))
         ^~~~~~~~~~~~~~~~~~~~~~
   In file included from mm/migrate.c:41:0:
   include/linux/page_owner.h: In function 'page_is_young':
>> include/linux/page_owner.h:48:20: error: invalid storage class for function 'dump_page_owner'
    static inline void dump_page_owner(struct page *page)
                       ^~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:4:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from include/linux/migrate.h:4,
                    from mm/migrate.c:15:
   include/linux/page_owner.h: In function 'dump_page_owner':
   include/linux/page_owner.h:50:30: error: 'page_owner_inited' undeclared (first use in this function)
     if (static_branch_unlikely(&page_owner_inited))
                                 ^
   include/linux/compiler.h:151:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
   include/linux/page_owner.h:50:2: note: in expansion of macro 'if'
     if (static_branch_unlikely(&page_owner_inited))
     ^~
   include/linux/compiler.h:149:23: note: in expansion of macro '__trace_if'
    #define if(cond, ...) __trace_if( (cond , ## __VA_ARGS__) )
                          ^~~~~~~~~~
--
   In file included from mm/huge_memory.c:32:0:
   include/linux/page_idle.h: In function 'page_is_young':
>> include/linux/page_idle.h:139:0: error: unterminated argument list invoking macro "if"
    #endif /* _LINUX_MM_PAGE_IDLE_H */
    
   In file included from include/asm-generic/tlb.h:19:0,
                    from arch/x86/include/asm/tlb.h:16,
                    from mm/huge_memory.c:34:
>> arch/x86/include/asm/pgalloc.h:8:1: error: expected '(' before 'static'
    static inline int  __paravirt_pgd_alloc(struct mm_struct *mm) { return 0; }
    ^~~~~~
>> arch/x86/include/asm/pgalloc.h:33:1: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    extern pgd_t *pgd_alloc(struct mm_struct *);
    ^~~~~~
>> arch/x86/include/asm/pgalloc.h:42:20: error: invalid storage class for function 'pte_free_kernel'
    static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte)
                       ^~~~~~~~~~~~~~~
>> arch/x86/include/asm/pgalloc.h:48:20: error: invalid storage class for function 'pte_free'
    static inline void pte_free(struct mm_struct *mm, struct page *pte)
                       ^~~~~~~~
>> arch/x86/include/asm/pgalloc.h:56:20: error: invalid storage class for function '__pte_free_tlb'
    static inline void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte,
                       ^~~~~~~~~~~~~~
>> arch/x86/include/asm/pgalloc.h:62:20: error: invalid storage class for function 'pmd_populate_kernel'
    static inline void pmd_populate_kernel(struct mm_struct *mm,
                       ^~~~~~~~~~~~~~~~~~~
>> arch/x86/include/asm/pgalloc.h:69:20: error: invalid storage class for function 'pmd_populate'
    static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd,
                       ^~~~~~~~~~~~
   In file included from arch/x86/include/asm/tlb.h:16:0,
                    from mm/huge_memory.c:34:
>> include/asm-generic/tlb.h:124:20: error: invalid storage class for function 'tlb_remove_page'
    static inline void tlb_remove_page(struct mmu_gather *tlb, struct page *page)
                       ^~~~~~~~~~~~~~~
>> include/asm-generic/tlb.h:130:20: error: invalid storage class for function '__tlb_adjust_range'
    static inline void __tlb_adjust_range(struct mmu_gather *tlb,
                       ^~~~~~~~~~~~~~~~~~
>> include/asm-generic/tlb.h:137:20: error: invalid storage class for function '__tlb_reset_range'
    static inline void __tlb_reset_range(struct mmu_gather *tlb)
                       ^~~~~~~~~~~~~~~~~
   In file included from mm/huge_memory.c:36:0:
>> mm/internal.h:53:29: error: invalid storage class for function 'ra_submit'
    static inline unsigned long ra_submit(struct file_ra_state *ra,
                                ^~~~~~~~~
>> mm/internal.h:64:20: error: invalid storage class for function 'set_page_refcounted'
    static inline void set_page_refcounted(struct page *page)
                       ^~~~~~~~~~~~~~~~~~~
>> mm/internal.h:131:1: error: invalid storage class for function '__find_buddy_index'
    __find_buddy_index(unsigned long page_idx, unsigned int order)
    ^~~~~~~~~~~~~~~~~~
>> mm/internal.h:139:28: error: invalid storage class for function 'pageblock_pfn_to_page'
    static inline struct page *pageblock_pfn_to_page(unsigned long start_pfn,
                               ^~~~~~~~~~~~~~~~~~~~~
>> mm/internal.h:208:28: error: invalid storage class for function 'page_order'
    static inline unsigned int page_order(struct page *page)
                               ^~~~~~~~~~
>> mm/internal.h:227:20: error: invalid storage class for function 'is_cow_mapping'
    static inline bool is_cow_mapping(vm_flags_t flags)
                       ^~~~~~~~~~~~~~
>> mm/internal.h:239:20: error: invalid storage class for function 'is_exec_mapping'
    static inline bool is_exec_mapping(vm_flags_t flags)
                       ^~~~~~~~~~~~~~~
>> mm/internal.h:250:20: error: invalid storage class for function 'is_stack_mapping'
    static inline bool is_stack_mapping(vm_flags_t flags)
                       ^~~~~~~~~~~~~~~~
>> mm/internal.h:258:20: error: invalid storage class for function 'is_data_mapping'
    static inline bool is_data_mapping(vm_flags_t flags)
                       ^~~~~~~~~~~~~~~
--
   In file included from mm/page_ext.c:9:0:
   include/linux/page_idle.h: In function 'page_is_young':
>> include/linux/page_idle.h:139:0: error: unterminated argument list invoking macro "if"
    #endif /* _LINUX_MM_PAGE_IDLE_H */
    
>> mm/page_ext.c:55:1: error: expected '(' before 'static'
    static struct page_ext_operations *page_ext_ops[] = {
    ^~~~~~
>> mm/page_ext.c:68:1: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    static unsigned long total_usage;
    ^~~~~~
>> mm/page_ext.c:70:20: error: invalid storage class for function 'invoke_need_callbacks'
    static bool __init invoke_need_callbacks(void)
                       ^~~~~~~~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:13:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from mm/page_ext.c:1:
   mm/page_ext.c: In function 'invoke_need_callbacks':
>> mm/page_ext.c:73:27: error: 'page_ext_ops' undeclared (first use in this function)
     int entries = ARRAY_SIZE(page_ext_ops);
                              ^
   include/linux/kernel.h:54:33: note: in definition of macro 'ARRAY_SIZE'
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                    ^~~
   mm/page_ext.c:73:27: note: each undeclared identifier is reported only once for each function it appears in
     int entries = ARRAY_SIZE(page_ext_ops);
                              ^
   include/linux/kernel.h:54:33: note: in definition of macro 'ARRAY_SIZE'
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                    ^~~
   In file included from include/linux/mmdebug.h:4:0,
                    from include/linux/mm.h:8,
                    from mm/page_ext.c:1:
   include/linux/bug.h:34:45: error: bit-field '<anonymous>' width not an integer constant
    #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); }))
                                                ^
   include/linux/compiler-gcc.h:64:28: note: in expansion of macro 'BUILD_BUG_ON_ZERO'
    #define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0]))
                               ^~~~~~~~~~~~~~~~~
   include/linux/kernel.h:54:59: note: in expansion of macro '__must_be_array'
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                                              ^~~~~~~~~~~~~~~
>> mm/page_ext.c:73:16: note: in expansion of macro 'ARRAY_SIZE'
     int entries = ARRAY_SIZE(page_ext_ops);
                   ^~~~~~~~~~
   mm/page_ext.c: In function 'page_is_young':
>> mm/page_ext.c:83:20: error: invalid storage class for function 'invoke_init_callbacks'
    static void __init invoke_init_callbacks(void)
                       ^~~~~~~~~~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:13:0,
                    from arch/x86/include/asm/bug.h:35,
                    from include/linux/bug.h:4,
                    from include/linux/mmdebug.h:4,
                    from include/linux/mm.h:8,
                    from mm/page_ext.c:1:
   mm/page_ext.c: In function 'invoke_init_callbacks':
   mm/page_ext.c:86:27: error: 'page_ext_ops' undeclared (first use in this function)
     int entries = ARRAY_SIZE(page_ext_ops);
                              ^
   include/linux/kernel.h:54:33: note: in definition of macro 'ARRAY_SIZE'
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                    ^~~
   In file included from include/linux/mmdebug.h:4:0,
                    from include/linux/mm.h:8,
                    from mm/page_ext.c:1:
   include/linux/bug.h:34:45: error: bit-field '<anonymous>' width not an integer constant
    #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); }))
                                                ^
   include/linux/compiler-gcc.h:64:28: note: in expansion of macro 'BUILD_BUG_ON_ZERO'
    #define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0]))
                               ^~~~~~~~~~~~~~~~~
   include/linux/kernel.h:54:59: note: in expansion of macro '__must_be_array'
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                                              ^~~~~~~~~~~~~~~
   mm/page_ext.c:86:16: note: in expansion of macro 'ARRAY_SIZE'
     int entries = ARRAY_SIZE(page_ext_ops);
                   ^~~~~~~~~~
   mm/page_ext.c: In function 'page_is_young':
>> mm/page_ext.c:127:19: error: invalid storage class for function 'alloc_node_page_ext'
    static int __init alloc_node_page_ext(int nid)
                      ^~~~~~~~~~~~~~~~~~~
>> mm/page_ext.c:178:1: error: expected declaration or statement at end of input
    }
    ^
>> mm/page_ext.c:178:1: warning: no return statement in function returning non-void [-Wreturn-type]
   At top level:
   mm/page_ext.c:158:13: warning: 'page_ext_init_flatmem' defined but not used [-Wunused-function]
    void __init page_ext_init_flatmem(void)
                ^~~~~~~~~~~~~~~~~~~~~
   mm/page_ext.c:102:18: warning: 'lookup_page_ext' defined but not used [-Wunused-function]
    struct page_ext *lookup_page_ext(struct page *page)
                     ^~~~~~~~~~~~~~~
   mm/page_ext.c:97:16: warning: 'pgdat_page_ext_init' defined but not used [-Wunused-function]
    void __meminit pgdat_page_ext_init(struct pglist_data *pgdat)
                   ^~~~~~~~~~~~~~~~~~~
..

vim +/if +139 include/linux/page_idle.h

33c3fc71 Vladimir Davydov 2015-09-09  133  static inline void clear_page_idle(struct page *page)
33c3fc71 Vladimir Davydov 2015-09-09  134  {
33c3fc71 Vladimir Davydov 2015-09-09  135  }
33c3fc71 Vladimir Davydov 2015-09-09  136  
33c3fc71 Vladimir Davydov 2015-09-09  137  #endif /* CONFIG_IDLE_PAGE_TRACKING */
33c3fc71 Vladimir Davydov 2015-09-09  138  
33c3fc71 Vladimir Davydov 2015-09-09 @139  #endif /* _LINUX_MM_PAGE_IDLE_H */

:::::: The code at line 139 was first introduced by commit
:::::: 33c3fc71c8cfa3cc3a98beaa901c069c177dc295 mm: introduce idle page tracking

:::::: TO: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
:::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: Binary data


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]