aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-26 19:50:48 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-26 19:50:48 -0400
commit6cd236e0057704d1f5c77908374079e021c83928 (patch)
tree302e002d62dcd4663aef7e9a98ca4b019e3e5c98 /include
parent2c9dbda360d96819456f845ea92e20e4e9d0ed36 (diff)
parent8e15a0e35fdaf19e1aeb7923571e928bd6123cfd (diff)
Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Count timer interrupts correctly. [MIPS] SMTC and non-SMTC kernel and modules are incompatible [MIPS] EMMA2RH: Disable GEN_RTC, it can't possibly work. [MIPS] Remove a duplicated local variable in test_and_clear_bit() [MIPS] use compat_siginfo in rt_sigframe_n32 [MIPS] 20K: Handle WAIT related bugs according to errata information [MIPS] AP/SP requires shadow registers, auto enable support. [MIPS] Fix pb1500 reg B access [MIPS] Alchemy: Fix wrong cast [MIPS] remove "support for" from system type entry [MIPS] add io_map_base to pci_controller on Cobalt [MIPS] __ucmpdi2 arguments are unsigned long long.
Diffstat (limited to 'include')
-rw-r--r--include/asm-mips/bitops.h2
-rw-r--r--include/asm-mips/compat-signal.h62
-rw-r--r--include/asm-mips/module.h9
3 files changed, 71 insertions, 2 deletions
diff --git a/include/asm-mips/bitops.h b/include/asm-mips/bitops.h
index ffe245b4258f..d9e81af53f78 100644
--- a/include/asm-mips/bitops.h
+++ b/include/asm-mips/bitops.h
@@ -310,7 +310,7 @@ static inline int test_and_clear_bit(unsigned long nr,
310 310
311 if (cpu_has_llsc && R10000_LLSC_WAR) { 311 if (cpu_has_llsc && R10000_LLSC_WAR) {
312 unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG); 312 unsigned long *m = ((unsigned long *) addr) + (nr >> SZLONG_LOG);
313 unsigned long temp, res; 313 unsigned long temp;
314 314
315 __asm__ __volatile__( 315 __asm__ __volatile__(
316 " .set mips3 \n" 316 " .set mips3 \n"
diff --git a/include/asm-mips/compat-signal.h b/include/asm-mips/compat-signal.h
index 6599a901b63e..368a99e5c3e1 100644
--- a/include/asm-mips/compat-signal.h
+++ b/include/asm-mips/compat-signal.h
@@ -10,6 +10,68 @@
10 10
11#include <asm/uaccess.h> 11#include <asm/uaccess.h>
12 12
13#define SI_PAD_SIZE32 ((SI_MAX_SIZE/sizeof(int)) - 3)
14
15typedef struct compat_siginfo {
16 int si_signo;
17 int si_code;
18 int si_errno;
19
20 union {
21 int _pad[SI_PAD_SIZE32];
22
23 /* kill() */
24 struct {
25 compat_pid_t _pid; /* sender's pid */
26 compat_uid_t _uid; /* sender's uid */
27 } _kill;
28
29 /* SIGCHLD */
30 struct {
31 compat_pid_t _pid; /* which child */
32 compat_uid_t _uid; /* sender's uid */
33 int _status; /* exit code */
34 compat_clock_t _utime;
35 compat_clock_t _stime;
36 } _sigchld;
37
38 /* IRIX SIGCHLD */
39 struct {
40 compat_pid_t _pid; /* which child */
41 compat_clock_t _utime;
42 int _status; /* exit code */
43 compat_clock_t _stime;
44 } _irix_sigchld;
45
46 /* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
47 struct {
48 s32 _addr; /* faulting insn/memory ref. */
49 } _sigfault;
50
51 /* SIGPOLL, SIGXFSZ (To do ...) */
52 struct {
53 int _band; /* POLL_IN, POLL_OUT, POLL_MSG */
54 int _fd;
55 } _sigpoll;
56
57 /* POSIX.1b timers */
58 struct {
59 timer_t _tid; /* timer id */
60 int _overrun; /* overrun count */
61 compat_sigval_t _sigval;/* same as below */
62 int _sys_private; /* not to be passed to user */
63 } _timer;
64
65 /* POSIX.1b signals */
66 struct {
67 compat_pid_t _pid; /* sender's pid */
68 compat_uid_t _uid; /* sender's uid */
69 compat_sigval_t _sigval;
70 } _rt;
71
72 } _sifields;
73} compat_siginfo_t;
74
13static inline int __copy_conv_sigset_to_user(compat_sigset_t __user *d, 75static inline int __copy_conv_sigset_to_user(compat_sigset_t __user *d,
14 const sigset_t *s) 76 const sigset_t *s)
15{ 77{
diff --git a/include/asm-mips/module.h b/include/asm-mips/module.h
index 399d03f1c4fc..c5ef324fd69f 100644
--- a/include/asm-mips/module.h
+++ b/include/asm-mips/module.h
@@ -122,6 +122,13 @@ search_module_dbetables(unsigned long addr)
122#define MODULE_KERNEL_TYPE "64BIT " 122#define MODULE_KERNEL_TYPE "64BIT "
123#endif 123#endif
124 124
125#define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_KERNEL_TYPE 125#ifdef CONFIG_MIPS_MT_SMTC
126#define MODULE_KERNEL_SMTC "MT_SMTC "
127#else
128#define MODULE_KERNEL_SMTC ""
129#endif
130
131#define MODULE_ARCH_VERMAGIC \
132 MODULE_PROC_FAMILY MODULE_KERNEL_TYPE MODULE_KERNEL_SMTC
126 133
127#endif /* _ASM_MODULE_H */ 134#endif /* _ASM_MODULE_H */