2007-12-03 12:16:57 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:16:57 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:16:57 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:16:57 -05:00
|
|
|
|
2006-06-27 02:53:52 -07:00
|
|
|
|
Detach sched.h from mm.h
First thing mm.h does is including sched.h solely for can_do_mlock() inline
function which has "current" dereference inside. By dealing with can_do_mlock()
mm.h can be detached from sched.h which is good. See below, why.
This patch
a) removes unconditional inclusion of sched.h from mm.h
b) makes can_do_mlock() normal function in mm/mlock.c
c) exports can_do_mlock() to not break compilation
d) adds sched.h inclusions back to files that were getting it indirectly.
e) adds less bloated headers to some files (asm/signal.h, jiffies.h) that were
getting them indirectly
Net result is:
a) mm.h users would get less code to open, read, preprocess, parse, ... if
they don't need sched.h
b) sched.h stops being dependency for significant number of files:
on x86_64 allmodconfig touching sched.h results in recompile of 4083 files,
after patch it's only 3744 (-8.3%).
Cross-compile tested on
all arm defconfigs, all mips defconfigs, all powerpc defconfigs,
alpha alpha-up
arm
i386 i386-up i386-defconfig i386-allnoconfig
ia64 ia64-up
m68k
mips
parisc parisc-up
powerpc powerpc-up
s390 s390-up
sparc sparc-up
sparc64 sparc64-up
um-x86_64
x86_64 x86_64-up x86_64-defconfig x86_64-allnoconfig
as well as my two usual configs.
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-21 01:22:52 +04:00
|
|
|
|
2007-12-03 12:16:57 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2008-04-28 02:12:37 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-04-24 22:45:25 +02:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-04-24 22:45:25 +02:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:10:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:10:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2007-12-03 12:10:24 -05:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:10:24 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2006-09-22 11:37:27 +02:00
|
|
|
|
|
|
|
|
|
2007-04-24 22:45:25 +02:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2006-09-22 11:37:27 +02:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2006-09-22 11:37:27 +02:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2006-09-22 11:37:27 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-04-24 22:45:25 +02:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:16:24 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2008-04-28 02:12:37 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2008-04-28 02:12:37 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-04-24 22:45:25 +02:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-04-24 22:45:25 +02:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:16:57 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:09:33 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-10-16 23:29:32 -07:00
|
|
|
|
2007-12-03 12:09:33 -05:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:09:33 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2008-04-28 02:12:37 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2008-04-28 02:12:37 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2007-12-03 12:09:33 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 14:08:28 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
|
devres: device resource management
Implement device resource management, in short, devres. A device
driver can allocate arbirary size of devres data which is associated
with a release function. On driver detach, release function is
invoked on the devres data, then, devres data is freed.
devreses are typed by associated release functions. Some devreses are
better represented by single instance of the type while others need
multiple instances sharing the same release function. Both usages are
supported.
devreses can be grouped using devres group such that a device driver
can easily release acquired resources halfway through initialization
or selectively release resources (e.g. resources for port 1 out of 4
ports).
This patch adds devres core including documentation and the following
managed interfaces.
* alloc/free : devm_kzalloc(), devm_kzfree()
* IO region : devm_request_region(), devm_release_region()
* IRQ : devm_request_irq(), devm_free_irq()
* DMA : dmam_alloc_coherent(), dmam_free_coherent(),
dmam_declare_coherent_memory(), dmam_pool_create(),
dmam_pool_destroy()
* PCI : pcim_enable_device(), pcim_pin_device(), pci_is_managed()
* iomap : devm_ioport_map(), devm_ioport_unmap(), devm_ioremap(),
devm_ioremap_nocache(), devm_iounmap(), pcim_iomap_table(),
pcim_iomap(), pcim_iounmap()
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-01-20 16:00:26 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|
devres: device resource management
Implement device resource management, in short, devres. A device
driver can allocate arbirary size of devres data which is associated
with a release function. On driver detach, release function is
invoked on the devres data, then, devres data is freed.
devreses are typed by associated release functions. Some devreses are
better represented by single instance of the type while others need
multiple instances sharing the same release function. Both usages are
supported.
devreses can be grouped using devres group such that a device driver
can easily release acquired resources halfway through initialization
or selectively release resources (e.g. resources for port 1 out of 4
ports).
This patch adds devres core including documentation and the following
managed interfaces.
* alloc/free : devm_kzalloc(), devm_kzfree()
* IO region : devm_request_region(), devm_release_region()
* IRQ : devm_request_irq(), devm_free_irq()
* DMA : dmam_alloc_coherent(), dmam_free_coherent(),
dmam_declare_coherent_memory(), dmam_pool_create(),
dmam_pool_destroy()
* PCI : pcim_enable_device(), pcim_pin_device(), pci_is_managed()
* iomap : devm_ioport_map(), devm_ioport_unmap(), devm_ioremap(),
devm_ioremap_nocache(), devm_iounmap(), pcim_iomap_table(),
pcim_iomap(), pcim_iounmap()
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-01-20 16:00:26 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2007-12-03 12:04:31 -05:00
|
|
|
|