• Ralf Baechle's avatar
    Fix mempolicy.h build error · 4a740b27
    Ralf Baechle authored
    <linux/mempolicy.h> uses struct mm_struct and relies on a definition or
    declaration somehow magically being dragged in which may result in a
    build:
    
      CC      mm/mempolicy.o
    In file included from mm/mempolicy.c:69:
    include/linux/mempolicy.h:150: warning: 'struct mm_struct' declared inside parameter list
    include/linux/mempolicy.h:150: warning: its scope is only this definition or declaration, which is probably not what you want
    include/linux/mempolicy.h:174: warning: 'struct mm_struct' declared inside parameter list
    mm/mempolicy.c:673: error: conflicting types for 'do_migrate_pages'
    include/linux/mempolicy.h:174: error: previous declaration of 'do_migrate_pages' was here
    mm/mempolicy.c:1696: error: conflicting types for 'mpol_rebind_mm'
    include/linux/mempolicy.h:150: error: previous declaration of 'mpol_rebind_mm' was here
    make[1]: *** [mm/mempolicy.o] Error 1
    make: *** [mm] Error 2
    $
    
    Including <linux/sched.h> is a step into direction of include hell so
    fixed by adding a forward declaration of struct mm_struct instead.
    Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
    4a740b27
mempolicy.h 6.66 KB