diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-30 11:37:55 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-30 11:37:55 -0400 |
| commit | 369aa8395a5dcc89230f1de5459124c4b0db9fca (patch) | |
| tree | d95edf4c52e343e2080427ad153da051ea52eee6 /include | |
| parent | bf603625660b1742004bf86432ce3c210d14d4fd (diff) | |
| parent | c84ef5305930d19bdd6cd576b3a3a73786a82e57 (diff) | |
Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6
* 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6:
[PATCH] Use early clobber in semaphores
[PATCH] Define vsyscall cache as blob to make clearer that user space shouldn't use it
[PATCH] Re-positioning the bss segment
[PATCH] Use ARRAY_SIZE in setup.c
[PATCH] i386: replace intermediate array-size definitions with ARRAY_SIZE()
[PATCH] x86: Clean up x86 NMI sysctls
[PATCH] Refactor some duplicated code in mpparse.c
[PATCH] Document iommu=panic
[PATCH] Fix broken indentation in iommu_setup
[PATCH] Allow disabling DAC using command line options
[PATCH] Add proper sparse __user casts to __copy_to_user_inatomic
[PATCH] i386: Update defconfig
[PATCH] Update defconfig
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-i386/nmi.h | 6 | ||||
| -rw-r--r-- | include/asm-x86_64/nmi.h | 7 | ||||
| -rw-r--r-- | include/asm-x86_64/semaphore.h | 4 | ||||
| -rw-r--r-- | include/asm-x86_64/uaccess.h | 7 | ||||
| -rw-r--r-- | include/linux/getcpu.h | 12 |
5 files changed, 28 insertions, 8 deletions
diff --git a/include/asm-i386/nmi.h b/include/asm-i386/nmi.h index 303bcd4592bb..269d315719ca 100644 --- a/include/asm-i386/nmi.h +++ b/include/asm-i386/nmi.h | |||
| @@ -36,4 +36,10 @@ extern unsigned int nmi_watchdog; | |||
| 36 | #define NMI_LOCAL_APIC 2 | 36 | #define NMI_LOCAL_APIC 2 |
| 37 | #define NMI_INVALID 3 | 37 | #define NMI_INVALID 3 |
| 38 | 38 | ||
| 39 | struct ctl_table; | ||
| 40 | struct file; | ||
| 41 | extern int proc_nmi_enabled(struct ctl_table *, int , struct file *, | ||
| 42 | void __user *, size_t *, loff_t *); | ||
| 43 | extern int unknown_nmi_panic; | ||
| 44 | |||
| 39 | #endif /* ASM_NMI_H */ | 45 | #endif /* ASM_NMI_H */ |
diff --git a/include/asm-x86_64/nmi.h b/include/asm-x86_64/nmi.h index cbf2669bca71..f367d4014b42 100644 --- a/include/asm-x86_64/nmi.h +++ b/include/asm-x86_64/nmi.h | |||
| @@ -70,4 +70,11 @@ extern unsigned int nmi_watchdog; | |||
| 70 | #define NMI_LOCAL_APIC 2 | 70 | #define NMI_LOCAL_APIC 2 |
| 71 | #define NMI_INVALID 3 | 71 | #define NMI_INVALID 3 |
| 72 | 72 | ||
| 73 | struct ctl_table; | ||
| 74 | struct file; | ||
| 75 | extern int proc_nmi_enabled(struct ctl_table *, int , struct file *, | ||
| 76 | void __user *, size_t *, loff_t *); | ||
| 77 | |||
| 78 | extern int unknown_nmi_panic; | ||
| 79 | |||
| 73 | #endif /* ASM_NMI_H */ | 80 | #endif /* ASM_NMI_H */ |
diff --git a/include/asm-x86_64/semaphore.h b/include/asm-x86_64/semaphore.h index 107bd90429e8..1194888536b9 100644 --- a/include/asm-x86_64/semaphore.h +++ b/include/asm-x86_64/semaphore.h | |||
| @@ -132,7 +132,7 @@ static inline int down_interruptible(struct semaphore * sem) | |||
| 132 | "jns 2f\n\t" | 132 | "jns 2f\n\t" |
| 133 | "call __down_failed_interruptible\n" | 133 | "call __down_failed_interruptible\n" |
| 134 | "2:\n" | 134 | "2:\n" |
| 135 | :"=a" (result), "=m" (sem->count) | 135 | :"=&a" (result), "=m" (sem->count) |
| 136 | :"D" (sem) | 136 | :"D" (sem) |
| 137 | :"memory"); | 137 | :"memory"); |
| 138 | return result; | 138 | return result; |
| @@ -153,7 +153,7 @@ static inline int down_trylock(struct semaphore * sem) | |||
| 153 | "jns 2f\n\t" | 153 | "jns 2f\n\t" |
| 154 | "call __down_failed_trylock\n\t" | 154 | "call __down_failed_trylock\n\t" |
| 155 | "2:\n" | 155 | "2:\n" |
| 156 | :"=a" (result), "=m" (sem->count) | 156 | :"=&a" (result), "=m" (sem->count) |
| 157 | :"D" (sem) | 157 | :"D" (sem) |
| 158 | :"memory","cc"); | 158 | :"memory","cc"); |
| 159 | return result; | 159 | return result; |
diff --git a/include/asm-x86_64/uaccess.h b/include/asm-x86_64/uaccess.h index e856570c0689..19f99178fe83 100644 --- a/include/asm-x86_64/uaccess.h +++ b/include/asm-x86_64/uaccess.h | |||
| @@ -361,6 +361,11 @@ __must_check unsigned long clear_user(void __user *mem, unsigned long len); | |||
| 361 | __must_check unsigned long __clear_user(void __user *mem, unsigned long len); | 361 | __must_check unsigned long __clear_user(void __user *mem, unsigned long len); |
| 362 | 362 | ||
| 363 | __must_check long __copy_from_user_inatomic(void *dst, const void __user *src, unsigned size); | 363 | __must_check long __copy_from_user_inatomic(void *dst, const void __user *src, unsigned size); |
| 364 | #define __copy_to_user_inatomic copy_user_generic | 364 | |
| 365 | static __must_check __always_inline int | ||
| 366 | __copy_to_user_inatomic(void __user *dst, const void *src, unsigned size) | ||
| 367 | { | ||
| 368 | return copy_user_generic((__force void *)dst, src, size); | ||
| 369 | } | ||
| 365 | 370 | ||
| 366 | #endif /* __X86_64_UACCESS_H */ | 371 | #endif /* __X86_64_UACCESS_H */ |
diff --git a/include/linux/getcpu.h b/include/linux/getcpu.h index 031ed3780e45..c7372d7a97be 100644 --- a/include/linux/getcpu.h +++ b/include/linux/getcpu.h | |||
| @@ -1,16 +1,18 @@ | |||
| 1 | #ifndef _LINUX_GETCPU_H | 1 | #ifndef _LINUX_GETCPU_H |
| 2 | #define _LINUX_GETCPU_H 1 | 2 | #define _LINUX_GETCPU_H 1 |
| 3 | 3 | ||
| 4 | /* Cache for getcpu() to speed it up. Results might be upto a jiffie | 4 | /* Cache for getcpu() to speed it up. Results might be a short time |
| 5 | out of date, but will be faster. | 5 | out of date, but will be faster. |
| 6 | |||
| 6 | User programs should not refer to the contents of this structure. | 7 | User programs should not refer to the contents of this structure. |
| 7 | It is only a cache for vgetcpu(). It might change in future kernels. | 8 | I repeat they should not refer to it. If they do they will break |
| 9 | in future kernels. | ||
| 10 | |||
| 11 | It is only a private cache for vgetcpu(). It will change in future kernels. | ||
| 8 | The user program must store this information per thread (__thread) | 12 | The user program must store this information per thread (__thread) |
| 9 | If you want 100% accurate information pass NULL instead. */ | 13 | If you want 100% accurate information pass NULL instead. */ |
| 10 | struct getcpu_cache { | 14 | struct getcpu_cache { |
| 11 | unsigned long t0; | 15 | unsigned long blob[128 / sizeof(long)]; |
| 12 | unsigned long t1; | ||
| 13 | unsigned long res[4]; | ||
| 14 | }; | 16 | }; |
| 15 | 17 | ||
| 16 | #endif | 18 | #endif |
