diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-06-25 12:11:02 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-06-25 12:12:22 -0400 |
| commit | 8f8741ca5e55a35dafa35f4eac2b70b08fae997e (patch) | |
| tree | 4f3d0d5f685a735d5d6265c1b3cafda71ff0683e /include | |
| parent | 0a6a2daf1c7a30c3ca66a8ddb8fc4ff7820051e2 (diff) | |
| parent | 6b16351acbd415e66ba16bf7d473ece1574cf0bc (diff) | |
Merge 3.5-rc4 into usb-linus
This is needed to sync up with the previous USB changes that were merged in
Linus's branch.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-generic/bug.h | 8 | ||||
| -rw-r--r-- | include/asm-generic/pgtable.h | 10 | ||||
| -rw-r--r-- | include/drm/drm_pciids.h | 4 | ||||
| -rw-r--r-- | include/linux/compiler-gcc.h | 6 | ||||
| -rw-r--r-- | include/linux/kmsg_dump.h | 45 | ||||
| -rw-r--r-- | include/linux/mm_types.h | 10 | ||||
| -rw-r--r-- | include/linux/mmc/sdhci-spear.h | 2 | ||||
| -rw-r--r-- | include/linux/mmc/sdio.h | 2 | ||||
| -rw-r--r-- | include/linux/nfs_fs_sb.h | 1 | ||||
| -rw-r--r-- | include/linux/pata_arasan_cf_data.h | 2 | ||||
| -rw-r--r-- | include/linux/pstore_ram.h | 2 | ||||
| -rw-r--r-- | include/linux/pxa2xx_ssp.h | 2 | ||||
| -rw-r--r-- | include/linux/spi/pxa2xx_spi.h | 2 | ||||
| -rw-r--r-- | include/linux/vga_switcheroo.h | 6 |
14 files changed, 82 insertions, 20 deletions
diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h index 9f02005f217a..506ec19a3736 100644 --- a/include/asm-generic/bug.h +++ b/include/asm-generic/bug.h | |||
| @@ -2,7 +2,6 @@ | |||
| 2 | #define _ASM_GENERIC_BUG_H | 2 | #define _ASM_GENERIC_BUG_H |
| 3 | 3 | ||
| 4 | #include <linux/compiler.h> | 4 | #include <linux/compiler.h> |
| 5 | #include <linux/kernel.h> | ||
| 6 | 5 | ||
| 7 | #ifdef CONFIG_BUG | 6 | #ifdef CONFIG_BUG |
| 8 | 7 | ||
| @@ -32,6 +31,9 @@ struct bug_entry { | |||
| 32 | 31 | ||
| 33 | #endif /* CONFIG_GENERIC_BUG */ | 32 | #endif /* CONFIG_GENERIC_BUG */ |
| 34 | 33 | ||
| 34 | #ifndef __ASSEMBLY__ | ||
| 35 | #include <linux/kernel.h> | ||
| 36 | |||
| 35 | /* | 37 | /* |
| 36 | * Don't use BUG() or BUG_ON() unless there's really no way out; one | 38 | * Don't use BUG() or BUG_ON() unless there's really no way out; one |
| 37 | * example might be detecting data structure corruption in the middle | 39 | * example might be detecting data structure corruption in the middle |
| @@ -61,7 +63,6 @@ struct bug_entry { | |||
| 61 | * to provide better diagnostics. | 63 | * to provide better diagnostics. |
| 62 | */ | 64 | */ |
| 63 | #ifndef __WARN_TAINT | 65 | #ifndef __WARN_TAINT |
| 64 | #ifndef __ASSEMBLY__ | ||
| 65 | extern __printf(3, 4) | 66 | extern __printf(3, 4) |
| 66 | void warn_slowpath_fmt(const char *file, const int line, | 67 | void warn_slowpath_fmt(const char *file, const int line, |
| 67 | const char *fmt, ...); | 68 | const char *fmt, ...); |
| @@ -70,7 +71,6 @@ void warn_slowpath_fmt_taint(const char *file, const int line, unsigned taint, | |||
| 70 | const char *fmt, ...); | 71 | const char *fmt, ...); |
| 71 | extern void warn_slowpath_null(const char *file, const int line); | 72 | extern void warn_slowpath_null(const char *file, const int line); |
| 72 | #define WANT_WARN_ON_SLOWPATH | 73 | #define WANT_WARN_ON_SLOWPATH |
| 73 | #endif | ||
| 74 | #define __WARN() warn_slowpath_null(__FILE__, __LINE__) | 74 | #define __WARN() warn_slowpath_null(__FILE__, __LINE__) |
| 75 | #define __WARN_printf(arg...) warn_slowpath_fmt(__FILE__, __LINE__, arg) | 75 | #define __WARN_printf(arg...) warn_slowpath_fmt(__FILE__, __LINE__, arg) |
| 76 | #define __WARN_printf_taint(taint, arg...) \ | 76 | #define __WARN_printf_taint(taint, arg...) \ |
| @@ -203,4 +203,6 @@ extern void warn_slowpath_null(const char *file, const int line); | |||
| 203 | # define WARN_ON_SMP(x) ({0;}) | 203 | # define WARN_ON_SMP(x) ({0;}) |
| 204 | #endif | 204 | #endif |
| 205 | 205 | ||
| 206 | #endif /* __ASSEMBLY__ */ | ||
| 207 | |||
| 206 | #endif | 208 | #endif |
diff --git a/include/asm-generic/pgtable.h b/include/asm-generic/pgtable.h index 6f2b45a9b6bc..ff4947b7a976 100644 --- a/include/asm-generic/pgtable.h +++ b/include/asm-generic/pgtable.h | |||
| @@ -484,6 +484,16 @@ static inline int pmd_none_or_trans_huge_or_clear_bad(pmd_t *pmd) | |||
| 484 | /* | 484 | /* |
| 485 | * The barrier will stabilize the pmdval in a register or on | 485 | * The barrier will stabilize the pmdval in a register or on |
| 486 | * the stack so that it will stop changing under the code. | 486 | * the stack so that it will stop changing under the code. |
| 487 | * | ||
| 488 | * When CONFIG_TRANSPARENT_HUGEPAGE=y on x86 32bit PAE, | ||
| 489 | * pmd_read_atomic is allowed to return a not atomic pmdval | ||
| 490 | * (for example pointing to an hugepage that has never been | ||
| 491 | * mapped in the pmd). The below checks will only care about | ||
| 492 | * the low part of the pmd with 32bit PAE x86 anyway, with the | ||
| 493 | * exception of pmd_none(). So the important thing is that if | ||
| 494 | * the low part of the pmd is found null, the high part will | ||
| 495 | * be also null or the pmd_none() check below would be | ||
| 496 | * confused. | ||
| 487 | */ | 497 | */ |
| 488 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE | 498 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE |
| 489 | barrier(); | 499 | barrier(); |
diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h index 81368ab6c611..a7aec391b7b7 100644 --- a/include/drm/drm_pciids.h +++ b/include/drm/drm_pciids.h | |||
| @@ -1,7 +1,3 @@ | |||
| 1 | /* | ||
| 2 | This file is auto-generated from the drm_pciids.txt in the DRM CVS | ||
| 3 | Please contact dri-devel@lists.sf.net to add new cards to this list | ||
| 4 | */ | ||
| 5 | #define radeon_PCI_IDS \ | 1 | #define radeon_PCI_IDS \ |
| 6 | {0x1002, 0x3150, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY}, \ | 2 | {0x1002, 0x3150, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY}, \ |
| 7 | {0x1002, 0x3151, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ | 3 | {0x1002, 0x3151, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ |
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h index e5834aa24b9e..6a6d7aefe12d 100644 --- a/include/linux/compiler-gcc.h +++ b/include/linux/compiler-gcc.h | |||
| @@ -47,9 +47,9 @@ | |||
| 47 | */ | 47 | */ |
| 48 | #if !defined(CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING) || \ | 48 | #if !defined(CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING) || \ |
| 49 | !defined(CONFIG_OPTIMIZE_INLINING) || (__GNUC__ < 4) | 49 | !defined(CONFIG_OPTIMIZE_INLINING) || (__GNUC__ < 4) |
| 50 | # define inline inline __attribute__((always_inline)) | 50 | # define inline inline __attribute__((always_inline)) notrace |
| 51 | # define __inline__ __inline__ __attribute__((always_inline)) | 51 | # define __inline__ __inline__ __attribute__((always_inline)) notrace |
| 52 | # define __inline __inline __attribute__((always_inline)) | 52 | # define __inline __inline __attribute__((always_inline)) notrace |
| 53 | #else | 53 | #else |
| 54 | /* A lot of inline functions can cause havoc with function tracing */ | 54 | /* A lot of inline functions can cause havoc with function tracing */ |
| 55 | # define inline inline notrace | 55 | # define inline inline notrace |
diff --git a/include/linux/kmsg_dump.h b/include/linux/kmsg_dump.h index 35f7237ec972..d6bd50110ec2 100644 --- a/include/linux/kmsg_dump.h +++ b/include/linux/kmsg_dump.h | |||
| @@ -21,6 +21,7 @@ | |||
| 21 | * is passed to the kernel. | 21 | * is passed to the kernel. |
| 22 | */ | 22 | */ |
| 23 | enum kmsg_dump_reason { | 23 | enum kmsg_dump_reason { |
| 24 | KMSG_DUMP_UNDEF, | ||
| 24 | KMSG_DUMP_PANIC, | 25 | KMSG_DUMP_PANIC, |
| 25 | KMSG_DUMP_OOPS, | 26 | KMSG_DUMP_OOPS, |
| 26 | KMSG_DUMP_EMERG, | 27 | KMSG_DUMP_EMERG, |
| @@ -31,23 +32,37 @@ enum kmsg_dump_reason { | |||
| 31 | 32 | ||
| 32 | /** | 33 | /** |
| 33 | * struct kmsg_dumper - kernel crash message dumper structure | 34 | * struct kmsg_dumper - kernel crash message dumper structure |
| 34 | * @dump: The callback which gets called on crashes. The buffer is passed | ||
| 35 | * as two sections, where s1 (length l1) contains the older | ||
| 36 | * messages and s2 (length l2) contains the newer. | ||
| 37 | * @list: Entry in the dumper list (private) | 35 | * @list: Entry in the dumper list (private) |
| 36 | * @dump: Call into dumping code which will retrieve the data with | ||
| 37 | * through the record iterator | ||
| 38 | * @max_reason: filter for highest reason number that should be dumped | ||
| 38 | * @registered: Flag that specifies if this is already registered | 39 | * @registered: Flag that specifies if this is already registered |
| 39 | */ | 40 | */ |
| 40 | struct kmsg_dumper { | 41 | struct kmsg_dumper { |
| 41 | void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason, | ||
| 42 | const char *s1, unsigned long l1, | ||
| 43 | const char *s2, unsigned long l2); | ||
| 44 | struct list_head list; | 42 | struct list_head list; |
| 45 | int registered; | 43 | void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason); |
| 44 | enum kmsg_dump_reason max_reason; | ||
| 45 | bool active; | ||
| 46 | bool registered; | ||
| 47 | |||
| 48 | /* private state of the kmsg iterator */ | ||
| 49 | u32 cur_idx; | ||
| 50 | u32 next_idx; | ||
| 51 | u64 cur_seq; | ||
| 52 | u64 next_seq; | ||
| 46 | }; | 53 | }; |
| 47 | 54 | ||
| 48 | #ifdef CONFIG_PRINTK | 55 | #ifdef CONFIG_PRINTK |
| 49 | void kmsg_dump(enum kmsg_dump_reason reason); | 56 | void kmsg_dump(enum kmsg_dump_reason reason); |
| 50 | 57 | ||
| 58 | bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog, | ||
| 59 | char *line, size_t size, size_t *len); | ||
| 60 | |||
| 61 | bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog, | ||
| 62 | char *buf, size_t size, size_t *len); | ||
| 63 | |||
| 64 | void kmsg_dump_rewind(struct kmsg_dumper *dumper); | ||
| 65 | |||
| 51 | int kmsg_dump_register(struct kmsg_dumper *dumper); | 66 | int kmsg_dump_register(struct kmsg_dumper *dumper); |
| 52 | 67 | ||
| 53 | int kmsg_dump_unregister(struct kmsg_dumper *dumper); | 68 | int kmsg_dump_unregister(struct kmsg_dumper *dumper); |
| @@ -56,6 +71,22 @@ static inline void kmsg_dump(enum kmsg_dump_reason reason) | |||
