diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-28 18:58:21 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-28 18:58:21 -0400 |
commit | 0195c00244dc2e9f522475868fa278c473ba7339 (patch) | |
tree | f97ca98ae64ede2c33ad3de05ed7bbfa4f4495ed /fs | |
parent | f21ce8f8447c8be8847dadcfdbcc76b0d7365fa5 (diff) | |
parent | 141124c02059eee9dbc5c86ea797b1ca888e77f7 (diff) |
Merge tag 'split-asm_system_h-for-linus-20120328' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system
Pull "Disintegrate and delete asm/system.h" from David Howells:
"Here are a bunch of patches to disintegrate asm/system.h into a set of
separate bits to relieve the problem of circular inclusion
dependencies.
I've built all the working defconfigs from all the arches that I can
and made sure that they don't break.
The reason for these patches is that I recently encountered a circular
dependency problem that came about when I produced some patches to
optimise get_order() by rewriting it to use ilog2().
This uses bitops - and on the SH arch asm/bitops.h drags in
asm-generic/get_order.h by a circuituous route involving asm/system.h.
The main difficulty seems to be asm/system.h. It holds a number of
low level bits with no/few dependencies that are commonly used (eg.
memory barriers) and a number of bits with more dependencies that
aren't used in many places (eg. switch_to()).
These patches break asm/system.h up into the following core pieces:
(1) asm/barrier.h
Move memory barriers here. This already done for MIPS and Alpha.
(2) asm/switch_to.h
Move switch_to() and related stuff here.
(3) asm/exec.h
Move arch_align_stack() here. Other process execution related bits
could perhaps go here from asm/processor.h.
(4) asm/cmpxchg.h
Move xchg() and cmpxchg() here as they're full word atomic ops and
frequently used by atomic_xchg() and atomic_cmpxchg().
(5) asm/bug.h
Move die() and related bits.
(6) asm/auxvec.h
Move AT_VECTOR_SIZE_ARCH here.
Other arch headers are created as needed on a per-arch basis."
Fixed up some conflicts from other header file cleanups and moving code
around that has happened in the meantime, so David's testing is somewhat
weakened by that. We'll find out anything that got broken and fix it..
* tag 'split-asm_system_h-for-linus-20120328' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system: (38 commits)
Delete all instances of asm/system.h
Remove all #inclusions of asm/system.h
Add #includes needed to permit the removal of asm/system.h
Move all declarations of free_initmem() to linux/mm.h
Disintegrate asm/system.h for OpenRISC
Split arch_align_stack() out from asm-generic/system.h
Split the switch_to() wrapper out of asm-generic/system.h
Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h
Create asm-generic/barrier.h
Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h
Disintegrate asm/system.h for Xtensa
Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]
Disintegrate asm/system.h for Tile
Disintegrate asm/system.h for Sparc
Disintegrate asm/system.h for SH
Disintegrate asm/system.h for Score
Disintegrate asm/system.h for S390
Disintegrate asm/system.h for PowerPC
Disintegrate asm/system.h for PA-RISC
Disintegrate asm/system.h for MN10300
...
Diffstat (limited to 'fs')
-rw-r--r-- | fs/binfmt_aout.c | 1 | ||||
-rw-r--r-- | fs/binfmt_elf.c | 1 | ||||
-rw-r--r-- | fs/binfmt_elf_fdpic.c | 1 | ||||
-rw-r--r-- | fs/binfmt_flat.c | 1 | ||||
-rw-r--r-- | fs/coda/inode.c | 1 | ||||
-rw-r--r-- | fs/coda/psdev.c | 1 | ||||
-rw-r--r-- | fs/coda/upcall.c | 1 | ||||
-rw-r--r-- | fs/eventpoll.c | 1 | ||||
-rw-r--r-- | fs/exec.c | 1 | ||||
-rw-r--r-- | fs/jbd2/commit.c | 1 | ||||
-rw-r--r-- | fs/jbd2/journal.c | 1 | ||||
-rw-r--r-- | fs/ncpfs/file.c | 1 | ||||
-rw-r--r-- | fs/ncpfs/inode.c | 1 | ||||
-rw-r--r-- | fs/ncpfs/mmap.c | 1 | ||||
-rw-r--r-- | fs/nfs/client.c | 1 | ||||
-rw-r--r-- | fs/nfs/direct.c | 1 | ||||
-rw-r--r-- | fs/nfs/file.c | 1 | ||||
-rw-r--r-- | fs/nfs/getroot.c | 1 | ||||
-rw-r--r-- | fs/nfs/inode.c | 1 | ||||
-rw-r--r-- | fs/nfs/read.c | 1 | ||||
-rw-r--r-- | fs/nfs/super.c | 1 | ||||
-rw-r--r-- | fs/proc/inode.c | 1 | ||||
-rw-r--r-- | fs/reiserfs/journal.c | 1 | ||||
-rw-r--r-- | fs/ufs/inode.c | 1 | ||||
-rw-r--r-- | fs/ufs/super.c | 1 | ||||
-rw-r--r-- | fs/xfs/xfs_buf.h | 1 |
26 files changed, 3 insertions, 23 deletions
diff --git a/fs/binfmt_aout.c b/fs/binfmt_aout.c index 4d5e6d26578c..2eb12f13593d 100644 --- a/fs/binfmt_aout.c +++ b/fs/binfmt_aout.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <linux/coredump.h> | 26 | #include <linux/coredump.h> |
27 | #include <linux/slab.h> | 27 | #include <linux/slab.h> |
28 | 28 | ||
29 | #include <asm/system.h> | ||
30 | #include <asm/uaccess.h> | 29 | #include <asm/uaccess.h> |
31 | #include <asm/cacheflush.h> | 30 | #include <asm/cacheflush.h> |
32 | #include <asm/a.out-core.h> | 31 | #include <asm/a.out-core.h> |
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index 504b6eee50a9..7d7ff206cdcb 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c | |||
@@ -35,6 +35,7 @@ | |||
35 | #include <asm/uaccess.h> | 35 | #include <asm/uaccess.h> |
36 | #include <asm/param.h> | 36 | #include <asm/param.h> |
37 | #include <asm/page.h> | 37 | #include <asm/page.h> |
38 | #include <asm/exec.h> | ||
38 | 39 | ||
39 | static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs); | 40 | static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs); |
40 | static int load_elf_library(struct file *); | 41 | static int load_elf_library(struct file *); |
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c index c64bf5ee2df4..9bd5612a8224 100644 --- a/fs/binfmt_elf_fdpic.c +++ b/fs/binfmt_elf_fdpic.c | |||
@@ -39,6 +39,7 @@ | |||
39 | #include <asm/uaccess.h> | 39 | #include <asm/uaccess.h> |
40 | #include <asm/param.h> | 40 | #include <asm/param.h> |
41 | #include <asm/pgalloc.h> | 41 | #include <asm/pgalloc.h> |
42 | #include <asm/exec.h> | ||
42 | 43 | ||
43 | typedef char *elf_caddr_t; | 44 | typedef char *elf_caddr_t; |
44 | 45 | ||
diff --git a/fs/binfmt_flat.c b/fs/binfmt_flat.c index 5979027451b3..024d20ee3ca3 100644 --- a/fs/binfmt_flat.c +++ b/fs/binfmt_flat.c | |||
@@ -37,7 +37,6 @@ | |||
37 | #include <linux/syscalls.h> | 37 | #include <linux/syscalls.h> |
38 | 38 | ||
39 | #include <asm/byteorder.h> | 39 | #include <asm/byteorder.h> |
40 | #include <asm/system.h> | ||
41 | #include <asm/uaccess.h> | 40 | #include <asm/uaccess.h> |
42 | #include <asm/unaligned.h> | 41 | #include <asm/unaligned.h> |
43 | #include <asm/cacheflush.h> | 42 | #include <asm/cacheflush.h> |
diff --git a/fs/coda/inode.c b/fs/coda/inode.c index 05156c17b551..2870597b5c9d 100644 --- a/fs/coda/inode.c +++ b/fs/coda/inode.c | |||
@@ -21,7 +21,6 @@ | |||
21 | #include <linux/vfs.h> | 21 | #include <linux/vfs.h> |
22 | #include <linux/slab.h> | 22 | #include <linux/slab.h> |
23 | 23 | ||
24 | #include <asm/system.h> | ||
25 | #include <asm/uaccess.h> | 24 | #include <asm/uaccess.h> |
26 | 25 | ||
27 | #include <linux/fs.h> | 26 | #include <linux/fs.h> |
diff --git a/fs/coda/psdev.c b/fs/coda/psdev.c index 8f616e0e252c..761d5b31b18d 100644 --- a/fs/coda/psdev.c +++ b/fs/coda/psdev.c | |||
@@ -38,7 +38,6 @@ | |||
38 | #include <linux/mutex.h> | 38 | #include <linux/mutex.h> |
39 | #include <linux/device.h> | 39 | #include <linux/device.h> |
40 | #include <asm/io.h> | 40 | #include <asm/io.h> |
41 | #include <asm/system.h> | ||
42 | #include <asm/poll.h> | 41 | #include <asm/poll.h> |
43 | #include <asm/uaccess.h> | 42 | #include <asm/uaccess.h> |
44 | 43 | ||
diff --git a/fs/coda/upcall.c b/fs/coda/upcall.c index 9727e0c52579..0c68fd31fbf2 100644 --- a/fs/coda/upcall.c +++ b/fs/coda/upcall.c | |||
@@ -14,7 +14,6 @@ | |||
14 | * improvements to the Coda project. Contact Peter Braam <coda@cs.cmu.edu>. | 14 | * improvements to the Coda project. Contact Peter Braam <coda@cs.cmu.edu>. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include <asm/system.h> | ||
18 | #include <linux/signal.h> | 17 | #include <linux/signal.h> |
19 | #include <linux/sched.h> | 18 | #include <linux/sched.h> |
20 | #include <linux/types.h> | 19 | #include <linux/types.h> |
diff --git a/fs/eventpoll.c b/fs/eventpoll.c index 629e9ed99d0f..739b0985b398 100644 --- a/fs/eventpoll.c +++ b/fs/eventpoll.c | |||
@@ -34,7 +34,6 @@ | |||
34 | #include <linux/mutex.h> | 34 | #include <linux/mutex.h> |
35 | #include <linux/anon_inodes.h> | 35 | #include <linux/anon_inodes.h> |
36 | #include <asm/uaccess.h> | 36 | #include <asm/uaccess.h> |
37 | #include <asm/system.h> | ||
38 | #include <asm/io.h> | 37 | #include <asm/io.h> |
39 | #include <asm/mman.h> | 38 | #include <asm/mman.h> |
40 | #include <linux/atomic.h> | 39 | #include <linux/atomic.h> |
@@ -59,6 +59,7 @@ | |||
59 | #include <asm/uaccess.h> | 59 | #include <asm/uaccess.h> |
60 | #include <asm/mmu_context.h> | 60 | #include <asm/mmu_context.h> |
61 | #include <asm/tlb.h> | 61 | #include <asm/tlb.h> |
62 | #include <asm/exec.h> | ||
62 | 63 | ||
63 | #include <trace/events/task.h> | 64 | #include <trace/events/task.h> |
64 | #include "internal.h" | 65 | #include "internal.h" |
diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c index 17f557f01cf0..806525a7269c 100644 --- a/fs/jbd2/commit.c +++ b/fs/jbd2/commit.c | |||
@@ -28,7 +28,6 @@ | |||
28 | #include <linux/blkdev.h> | 28 | #include <linux/blkdev.h> |
29 | #include <linux/bitops.h> | 29 | #include <linux/bitops.h> |
30 | #include <trace/events/jbd2.h> | 30 | #include <trace/events/jbd2.h> |
31 | #include <asm/system.h> | ||
32 | 31 | ||
33 | /* | 32 | /* |
34 | * Default IO end handler for temporary BJ_IO buffer_heads. | 33 | * Default IO end handler for temporary BJ_IO buffer_heads. |
diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c index 98ed6dbfe381..1afb701622b0 100644 --- a/fs/jbd2/journal.c +++ b/fs/jbd2/journal.c | |||
@@ -50,7 +50,6 @@ | |||
50 | 50 | ||
51 | #include <asm/uaccess.h> | 51 | #include <asm/uaccess.h> |
52 | #include <asm/page.h> | 52 | #include <asm/page.h> |
53 | #include <asm/system.h> | ||
54 | 53 | ||
55 | EXPORT_SYMBOL(jbd2_journal_extend); | 54 | EXPORT_SYMBOL(jbd2_journal_extend); |
56 | EXPORT_SYMBOL(jbd2_journal_stop); | 55 | EXPORT_SYMBOL(jbd2_journal_stop); |
diff --git a/fs/ncpfs/file.c b/fs/ncpfs/file.c index 64a326418aa2..3ff5fcc1528f 100644 --- a/fs/ncpfs/file.c +++ b/fs/ncpfs/file.c | |||
@@ -7,7 +7,6 @@ | |||
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <asm/uaccess.h> | 9 | #include <asm/uaccess.h> |
10 | #include <asm/system.h> | ||
11 | 10 | ||
12 | #include <linux/time.h> | 11 | #include <linux/time.h> |
13 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
diff --git a/fs/ncpfs/inode.c b/fs/ncpfs/inode.c index 49df0e7f8379..87484fb8d177 100644 --- a/fs/ncpfs/inode.c +++ b/fs/ncpfs/inode.c | |||
@@ -11,7 +11,6 @@ | |||
11 | 11 | ||
12 | #include <linux/module.h> | 12 | #include <linux/module.h> |
13 | 13 | ||
14 | #include <asm/system.h> | ||
15 | #include <asm/uaccess.h> | 14 | #include <asm/uaccess.h> |
16 | #include <asm/byteorder.h> | 15 | #include <asm/byteorder.h> |
17 | 16 | ||
diff --git a/fs/ncpfs/mmap.c b/fs/ncpfs/mmap.c index e5d71b27a5b0..be20a7e171a0 100644 --- a/fs/ncpfs/mmap.c +++ b/fs/ncpfs/mmap.c | |||
@@ -19,7 +19,6 @@ | |||
19 | #include <linux/memcontrol.h> | 19 | #include <linux/memcontrol.h> |
20 | 20 | ||
21 | #include <asm/uaccess.h> | 21 | #include <asm/uaccess.h> |
22 | #include <asm/system.h> | ||
23 | 22 | ||
24 | #include "ncp_fs.h" | 23 | #include "ncp_fs.h" |
25 | 24 | ||
diff --git a/fs/nfs/client.c b/fs/nfs/client.c index 4a108a0a2a60..da7b5e4ff9ec 100644 --- a/fs/nfs/client.c +++ b/fs/nfs/client.c | |||
@@ -43,7 +43,6 @@ | |||
43 | #include <linux/nsproxy.h> | 43 | #include <linux/nsproxy.h> |
44 | #include <linux/pid_namespace.h> | 44 | #include <linux/pid_namespace.h> |
45 | 45 | ||
46 | #include <asm/system.h> | ||
47 | 46 | ||
48 | #include "nfs4_fs.h" | 47 | #include "nfs4_fs.h" |
49 | #include "callback.h" | 48 | #include "callback.h" |
diff --git a/fs/nfs/direct.c b/fs/nfs/direct.c index 9c7f66ac6cc2..481be7f7bdd3 100644 --- a/fs/nfs/direct.c +++ b/fs/nfs/direct.c | |||
@@ -51,7 +51,6 @@ | |||
51 | #include <linux/nfs_page.h> | 51 | #include <linux/nfs_page.h> |
52 | #include <linux/sunrpc/clnt.h> | 52 | #include <linux/sunrpc/clnt.h> |
53 | 53 | ||
54 | #include <asm/system.h> | ||
55 | #include <asm/uaccess.h> | 54 | #include <asm/uaccess.h> |
56 | #include <linux/atomic.h> | 55 | #include <linux/atomic.h> |
57 | 56 | ||
diff --git a/fs/nfs/file.c b/fs/nfs/file.c index 4fdaaa63cf1c..aa9b709fd328 100644 --- a/fs/nfs/file.c +++ b/fs/nfs/file.c | |||
@@ -30,7 +30,6 @@ | |||
30 | #include <linux/swap.h> | 30 | #include <linux/swap.h> |
31 | 31 | ||
32 | #include <asm/uaccess.h> | 32 | #include <asm/uaccess.h> |
33 | #include <asm/system.h> | ||
34 | 33 | ||
35 | #include "delegation.h" | 34 | #include "delegation.h" |
36 | #include "internal.h" | 35 | #include "internal.h" |
diff --git a/fs/nfs/getroot.c b/fs/nfs/getroot.c index 801d6d830787..4ca6f5c8038e 100644 --- a/fs/nfs/getroot.c +++ b/fs/nfs/getroot.c | |||
@@ -32,7 +32,6 @@ | |||
32 | #include <linux/namei.h> | 32 | #include <linux/namei.h> |
33 | #include <linux/security.h> | 33 | #include <linux/security.h> |
34 | 34 | ||
35 | #include <asm/system.h> | ||
36 | #include <asm/uaccess.h> | 35 | #include <asm/uaccess.h> |
37 | 36 | ||
38 | #include "nfs4_fs.h" | 37 | #include "nfs4_fs.h" |
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c index 7bb4d13c1cd5..e8bbfa5b3500 100644 --- a/fs/nfs/inode.c +++ b/fs/nfs/inode.c | |||
@@ -41,7 +41,6 @@ | |||
41 | #include <linux/freezer.h> | 41 | #include <linux/freezer.h> |
42 | #include <linux/crc32.h> | 42 | #include <linux/crc32.h> |
43 | 43 | ||
44 | #include <asm/system.h> | ||
45 | #include <asm/uaccess.h> | 44 | #include <asm/uaccess.h> |
46 | 45 | ||
47 | #include "nfs4_fs.h" | 46 | #include "nfs4_fs.h" |
diff --git a/fs/nfs/read.c b/fs/nfs/read.c index cc1f758a7ee1..9a0e8ef4a409 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c | |||
@@ -20,7 +20,6 @@ | |||
20 | #include <linux/nfs_page.h> | 20 | #include <linux/nfs_page.h> |
21 | #include <linux/module.h> | 21 | #include <linux/module.h> |
22 | 22 | ||
23 | #include <asm/system.h> | ||
24 | #include "pnfs.h" | 23 | #include "pnfs.h" |
25 | 24 | ||
26 | #include "nfs4_fs.h" | 25 | #include "nfs4_fs.h" |
diff --git a/fs/nfs/super.c b/fs/nfs/super.c index ccc4cdb1efe9..37412f706b32 100644 --- a/fs/nfs/super.c +++ b/fs/nfs/super.c | |||
@@ -55,7 +55,6 @@ | |||
55 | #include <linux/nsproxy.h> | 55 | #include <linux/nsproxy.h> |
56 | #include <linux/rcupdate.h> | 56 | #include <linux/rcupdate.h> |
57 | 57 | ||
58 | #include <asm/system.h> | ||
59 | #include <asm/uaccess.h> | 58 | #include <asm/uaccess.h> |
60 | 59 | ||
61 | #include "nfs4_fs.h" | 60 | #include "nfs4_fs.h" |
diff --git a/fs/proc/inode.c b/fs/proc/inode.c index 8461a7b82fdb..205c92280838 100644 --- a/fs/proc/inode.c +++ b/fs/proc/inode.c | |||
@@ -22,7 +22,6 @@ | |||
22 | #include <linux/slab.h> | 22 | #include <linux/slab.h> |
23 | #include <linux/mount.h> | 23 | #include <linux/mount.h> |
24 | 24 | ||
25 | #include <asm/system.h> | ||
26 | #include <asm/uaccess.h> | 25 | #include <asm/uaccess.h> |
27 | 26 | ||
28 | #include "internal.h" | 27 | #include "internal.h" |
diff --git a/fs/reiserfs/journal.c b/fs/reiserfs/journal.c index cf9f4de00a95..b1a08573fe14 100644 --- a/fs/reiserfs/journal.c +++ b/fs/reiserfs/journal.c | |||
@@ -51,7 +51,6 @@ | |||
51 | #include <linux/uaccess.h> | 51 | #include <linux/uaccess.h> |
52 | #include <linux/slab.h> | 52 | #include <linux/slab.h> |
53 | 53 | ||
54 | #include <asm/system.h> | ||
55 | 54 | ||
56 | /* gets a struct reiserfs_journal_list * from a list head */ | 55 | /* gets a struct reiserfs_journal_list * from a list head */ |
57 | #define JOURNAL_LIST_ENTRY(h) (list_entry((h), struct reiserfs_journal_list, \ | 56 | #define JOURNAL_LIST_ENTRY(h) (list_entry((h), struct reiserfs_journal_list, \ |
diff --git a/fs/ufs/inode.c b/fs/ufs/inode.c index 9094e1d917be..7cdd3953d67e 100644 --- a/fs/ufs/inode.c +++ b/fs/ufs/inode.c | |||
@@ -26,7 +26,6 @@ | |||
26 | */ | 26 | */ |
27 | 27 | ||
28 | #include <asm/uaccess.h> | 28 | #include <asm/uaccess.h> |
29 | #include <asm/system.h> | ||
30 | 29 | ||
31 | #include <linux/errno.h> | 30 | #include <linux/errno.h> |
32 | #include <linux/fs.h> | 31 | #include <linux/fs.h> |
diff --git a/fs/ufs/super.c b/fs/ufs/super.c index f636f6b460d0..ac8e279eccc6 100644 --- a/fs/ufs/super.c +++ b/fs/ufs/super.c | |||
@@ -73,7 +73,6 @@ | |||
73 | #include <stdarg.h> | 73 | #include <stdarg.h> |
74 | 74 | ||
75 | #include <asm/uaccess.h> | 75 | #include <asm/uaccess.h> |
76 | #include <asm/system.h> | ||
77 | 76 | ||
78 | #include <linux/errno.h> | 77 | #include <linux/errno.h> |
79 | #include <linux/fs.h> | 78 | #include <linux/fs.h> |
diff --git a/fs/xfs/xfs_buf.h b/fs/xfs/xfs_buf.h index df7ffb0affe7..5bf3be45f543 100644 --- a/fs/xfs/xfs_buf.h +++ b/fs/xfs/xfs_buf.h | |||
@@ -21,7 +21,6 @@ | |||
21 | #include <linux/list.h> | 21 | #include <linux/list.h> |
22 | #include <linux/types.h> | 22 | #include <linux/types.h> |
23 | #include <linux/spinlock.h> | 23 | #include <linux/spinlock.h> |
24 | #include <asm/system.h> | ||
25 | #include <linux/mm.h> | 24 | #include <linux/mm.h> |
26 | #include <linux/fs.h> | 25 | #include <linux/fs.h> |
27 | #include <linux/buffer_head.h> | 26 | #include <linux/buffer_head.h> |