Prev: [PATCH 2/5] uml: Drop private round_down definition
Next: use acpi_idle_enter_simple if bm_check && !.bm_control
From: Jan Kiszka on 20 Apr 2010 13:10 Jeff Dike wrote: > On Tue, Apr 20, 2010 at 06:09:49PM +0800, Amerigo Wang wrote: >> On Mon, Apr 19, 2010 at 11:53:06PM +0200, Jan Kiszka wrote: >>> We can't pull in linux/sched.h, so just declare the struct. >>> >> Did you meet any build error? If yes, please include it. > > What does this patch fix, aside from being a bit cleaner? CC arch/um/sys-i386/elfcore.o In file included from /data/linux-2.6/include/linux/elf.h:8, from /data/linux-2.6/arch/um/sys-i386/elfcore.c:2: /data/linux-2.6/arch/um/sys-i386/asm/elf.h:78: warning: âstruct task_structâ declared inside parameter list /data/linux-2.6/arch/um/sys-i386/asm/elf.h:78: warning: its scope is only this definition or declaration, which is probably not what you want I guess not many people build against i386 hosts anymore, so this remained widely unnoticed. > > If it built before, without having a task_struct declaration, I think > that means that the elf_core_copy_fpregs was never used. The > task_struct * in the declaration would become a private task_struct, > known only to the declaration. If the implementation or callers have > the regular task_struct, it will be a different one, and the > prototypes will conflict due to the different types of the first > parameter. This is just a forward declaration (that many arch elf header include), so no such problem exists. BTW, to answer the other question in this thread: We have a circular dependency that prevents including sched.h. I can add all these information to some v2 of this patch if it is required to get this merged. Please let me know. Jan |