Commit 1477fcc290b3d5c2614bde98bf3b1154c538860d

Authored by Stephen Rothwell
Committed by Linus Torvalds
1 parent eb04f2f04e

signal.h need a definition of struct task_struct

This fixes these build errors on powerpc:

  In file included from arch/powerpc/mm/fault.c:18:
  include/linux/signal.h:239: error: 'struct task_struct' declared inside parameter list
  include/linux/signal.h:239: error: its scope is only this definition or declaration, which is probably not what you want
  include/linux/signal.h:240: error: 'struct task_struct' declared inside parameter list
  ..

Exposed by commit e66eed651fd1 ("list: remove prefetching from regular
list iterators"), which removed the include of <linux/prefetch.h> from
<linux/list.h>.

Without that, linux/signal.h no longer accidentally got the declaration
of 'struct task_struct'.

Fix by properly declaring the struct, rather than introducing any new
header file dependency.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 1 changed file with 2 additions and 0 deletions Side-by-side Diff

include/linux/signal.h
... ... @@ -7,6 +7,8 @@
7 7 #ifdef __KERNEL__
8 8 #include <linux/list.h>
9 9  
  10 +struct task_struct;
  11 +
10 12 /* for sysctl */
11 13 extern int print_fatal_signals;
12 14 /*