diff options
author | David Howells <dhowells@redhat.com> | 2006-10-02 09:12:31 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-02 11:03:31 -0400 |
commit | 3f2e05e90e0846c42626e3d272454f26be34a1bc (patch) | |
tree | 8a1701fcb7cde32373b6d7ceca09376416bf94eb | |
parent | 9ec52099e4b8678a60e9f93e41ad87885d64f3e6 (diff) |
[PATCH] BLOCK: Revert patch to hack around undeclared sigset_t in linux/compat.h
Revert Andrew Morton's patch to temporarily hack around the lack of a
declaration of sigset_t in linux/compat.h to make the block-disablement
patches build on IA64. This got accidentally pushed to Linus and should
be fixed in a different manner.
Also make linux/compat.h #include asm/signal.h to gain a definition of
sigset_t so that it can externally declare sigset_from_compat().
This has been compile-tested for i386, x86_64, ia64, mips, mips64, frv, ppc and
ppc64 and run-tested on frv.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | arch/mips/kernel/signal_n32.c | 4 | ||||
-rw-r--r-- | fs/compat.c | 2 | ||||
-rw-r--r-- | include/linux/compat.h | 1 | ||||
-rw-r--r-- | kernel/compat.c | 2 |
4 files changed, 3 insertions, 6 deletions
diff --git a/arch/mips/kernel/signal_n32.c b/arch/mips/kernel/signal_n32.c index 50c17eaa7f25..477c5334ec1b 100644 --- a/arch/mips/kernel/signal_n32.c +++ b/arch/mips/kernel/signal_n32.c | |||
@@ -42,8 +42,6 @@ | |||
42 | 42 | ||
43 | #include "signal-common.h" | 43 | #include "signal-common.h" |
44 | 44 | ||
45 | extern void sigset_from_compat(sigset_t *set, compat_sigset_t *compat); | ||
46 | |||
47 | /* | 45 | /* |
48 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... | 46 | * Including <asm/unistd.h> would give use the 64-bit syscall numbers ... |
49 | */ | 47 | */ |
@@ -83,6 +81,8 @@ struct rt_sigframe_n32 { | |||
83 | #endif | 81 | #endif |
84 | }; | 82 | }; |
85 | 83 | ||
84 | extern void sigset_from_compat (sigset_t *set, compat_sigset_t *compat); | ||
85 | |||
86 | save_static_function(sysn32_rt_sigsuspend); | 86 | save_static_function(sysn32_rt_sigsuspend); |
87 | __attribute_used__ noinline static int | 87 | __attribute_used__ noinline static int |
88 | _sysn32_rt_sigsuspend(nabi_no_regargs struct pt_regs regs) | 88 | _sysn32_rt_sigsuspend(nabi_no_regargs struct pt_regs regs) |
diff --git a/fs/compat.c b/fs/compat.c index 13fb08d096c4..d98c96f4a44d 100644 --- a/fs/compat.c +++ b/fs/compat.c | |||
@@ -56,8 +56,6 @@ | |||
56 | 56 | ||
57 | int compat_log = 1; | 57 | int compat_log = 1; |
58 | 58 | ||
59 | extern void sigset_from_compat(sigset_t *set, compat_sigset_t *compat); | ||
60 | |||
61 | int compat_printk(const char *fmt, ...) | 59 | int compat_printk(const char *fmt, ...) |
62 | { | 60 | { |
63 | va_list ap; | 61 | va_list ap; |
diff --git a/include/linux/compat.h b/include/linux/compat.h index 9760753e662b..6f110957cc97 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h | |||
@@ -13,6 +13,7 @@ | |||
13 | 13 | ||
14 | #include <asm/compat.h> | 14 | #include <asm/compat.h> |
15 | #include <asm/siginfo.h> | 15 | #include <asm/siginfo.h> |
16 | #include <asm/signal.h> | ||
16 | 17 | ||
17 | #define compat_jiffies_to_clock_t(x) \ | 18 | #define compat_jiffies_to_clock_t(x) \ |
18 | (((unsigned long)(x) * COMPAT_USER_HZ) / HZ) | 19 | (((unsigned long)(x) * COMPAT_USER_HZ) / HZ) |
diff --git a/kernel/compat.c b/kernel/compat.c index b4fbd838cd77..75573e5d27b0 100644 --- a/kernel/compat.c +++ b/kernel/compat.c | |||
@@ -26,8 +26,6 @@ | |||
26 | 26 | ||
27 | #include <asm/uaccess.h> | 27 | #include <asm/uaccess.h> |
28 | 28 | ||
29 | extern void sigset_from_compat(sigset_t *set, compat_sigset_t *compat); | ||
30 | |||
31 | int get_compat_timespec(struct timespec *ts, const struct compat_timespec __user *cts) | 29 | int get_compat_timespec(struct timespec *ts, const struct compat_timespec __user *cts) |
32 | { | 30 | { |
33 | return (!access_ok(VERIFY_READ, cts, sizeof(*cts)) || | 31 | return (!access_ok(VERIFY_READ, cts, sizeof(*cts)) || |