diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-generic/atomic.h | 6 | ||||
| -rw-r--r-- | include/asm-generic/cmpxchg.h | 10 | ||||
| -rw-r--r-- | include/drm/drm_pciids.h | 13 | ||||
| -rw-r--r-- | include/linux/edac.h | 7 | ||||
| -rw-r--r-- | include/linux/hash.h | 3 | ||||
| -rw-r--r-- | include/linux/irq_work.h | 2 | ||||
| -rw-r--r-- | include/linux/kernel.h | 1 | ||||
| -rw-r--r-- | include/linux/mfd/palmas.h | 1 | ||||
| -rw-r--r-- | include/linux/mfd/tps65912.h | 1 | ||||
| -rw-r--r-- | include/linux/mfd/wm831x/auxadc.h | 2 | ||||
| -rw-r--r-- | include/linux/mfd/wm831x/core.h | 2 | ||||
| -rw-r--r-- | include/linux/mmzone.h | 2 | ||||
| -rw-r--r-- | include/linux/mtd/nand.h | 7 | ||||
| -rw-r--r-- | include/linux/nvme.h | 28 | ||||
| -rw-r--r-- | include/linux/perf_event.h | 6 | ||||
| -rw-r--r-- | include/linux/printk.h | 6 | ||||
| -rw-r--r-- | include/linux/skbuff.h | 13 | ||||
| -rw-r--r-- | include/linux/usb/cdc_ncm.h | 1 | ||||
| -rw-r--r-- | include/linux/usb/serial.h | 2 | ||||
| -rw-r--r-- | include/linux/usb/ulpi.h | 8 | ||||
| -rw-r--r-- | include/net/dst.h | 6 | ||||
| -rw-r--r-- | include/net/inet_frag.h | 9 | ||||
| -rw-r--r-- | include/net/ip_fib.h | 12 | ||||
| -rw-r--r-- | include/video/atmel_lcdc.h | 2 |
24 files changed, 118 insertions, 32 deletions
diff --git a/include/asm-generic/atomic.h b/include/asm-generic/atomic.h index 1ced6413ea03..33bd2de3bc1e 100644 --- a/include/asm-generic/atomic.h +++ b/include/asm-generic/atomic.h | |||
| @@ -136,12 +136,6 @@ static inline void atomic_dec(atomic_t *v) | |||
| 136 | #define atomic_xchg(ptr, v) (xchg(&(ptr)->counter, (v))) | 136 | #define atomic_xchg(ptr, v) (xchg(&(ptr)->counter, (v))) |
| 137 | #define atomic_cmpxchg(v, old, new) (cmpxchg(&((v)->counter), (old), (new))) | 137 | #define atomic_cmpxchg(v, old, new) (cmpxchg(&((v)->counter), (old), (new))) |
| 138 | 138 | ||
| 139 | #define cmpxchg_local(ptr, o, n) \ | ||
| 140 | ((__typeof__(*(ptr)))__cmpxchg_local_generic((ptr), (unsigned long)(o),\ | ||
| 141 | (unsigned long)(n), sizeof(*(ptr)))) | ||
| 142 | |||
| 143 | #define cmpxchg64_local(ptr, o, n) __cmpxchg64_local_generic((ptr), (o), (n)) | ||
| 144 | |||
| 145 | static inline int __atomic_add_unless(atomic_t *v, int a, int u) | 139 | static inline int __atomic_add_unless(atomic_t *v, int a, int u) |
| 146 | { | 140 | { |
| 147 | int c, old; | 141 | int c, old; |
diff --git a/include/asm-generic/cmpxchg.h b/include/asm-generic/cmpxchg.h index 14883026015d..811fb1e9b061 100644 --- a/include/asm-generic/cmpxchg.h +++ b/include/asm-generic/cmpxchg.h | |||
| @@ -92,6 +92,16 @@ unsigned long __xchg(unsigned long x, volatile void *ptr, int size) | |||
| 92 | */ | 92 | */ |
| 93 | #include <asm-generic/cmpxchg-local.h> | 93 | #include <asm-generic/cmpxchg-local.h> |
| 94 | 94 | ||
| 95 | #ifndef cmpxchg_local | ||
| 96 | #define cmpxchg_local(ptr, o, n) \ | ||
| 97 | ((__typeof__(*(ptr)))__cmpxchg_local_generic((ptr), (unsigned long)(o),\ | ||
| 98 | (unsigned long)(n), sizeof(*(ptr)))) | ||
| 99 | #endif | ||
| 100 | |||
| 101 | #ifndef cmpxchg64_local | ||
| 102 | #define cmpxchg64_local(ptr, o, n) __cmpxchg64_local_generic((ptr), (o), (n)) | ||
| 103 | #endif | ||
| 104 | |||
| 95 | #define cmpxchg(ptr, o, n) cmpxchg_local((ptr), (o), (n)) | 105 | #define cmpxchg(ptr, o, n) cmpxchg_local((ptr), (o), (n)) |
| 96 | #define cmpxchg64(ptr, o, n) cmpxchg64_local((ptr), (o), (n)) | 106 | #define cmpxchg64(ptr, o, n) cmpxchg64_local((ptr), (o), (n)) |
| 97 | 107 | ||
diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h index a386b0b654cc..918e8fe2f5e9 100644 --- a/include/drm/drm_pciids.h +++ b/include/drm/drm_pciids.h | |||
| @@ -581,7 +581,11 @@ | |||
| 581 | {0x1002, 0x9908, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 581 | {0x1002, 0x9908, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 582 | {0x1002, 0x9909, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 582 | {0x1002, 0x9909, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 583 | {0x1002, 0x990A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 583 | {0x1002, 0x990A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 584 | {0x1002, 0x990F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 584 | {0x1002, 0x990B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 585 | {0x1002, 0x990C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 586 | {0x1002, 0x990D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 587 | {0x1002, 0x990E, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 588 | {0x1002, 0x990F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 585 | {0x1002, 0x9910, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 589 | {0x1002, 0x9910, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 586 | {0x1002, 0x9913, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 590 | {0x1002, 0x9913, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 587 | {0x1002, 0x9917, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 591 | {0x1002, 0x9917, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| @@ -592,6 +596,13 @@ | |||
| 592 | {0x1002, 0x9992, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 596 | {0x1002, 0x9992, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 593 | {0x1002, 0x9993, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 597 | {0x1002, 0x9993, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 594 | {0x1002, 0x9994, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 598 | {0x1002, 0x9994, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 599 | {0x1002, 0x9995, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 600 | {0x1002, 0x9996, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 601 | {0x1002, 0x9997, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 602 | {0x1002, 0x9998, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 603 | {0x1002, 0x9999, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 604 | {0x1002, 0x999A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 605 | {0x1002, 0x999B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | ||
| 595 | {0x1002, 0x99A0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 606 | {0x1002, 0x99A0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 596 | {0x1002, 0x99A2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 607 | {0x1002, 0x99A2, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
| 597 | {0x1002, 0x99A4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ | 608 | {0x1002, 0x99A4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_ARUBA|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ |
diff --git a/include/linux/edac.h b/include/linux/edac.h index 4fd4999ccb5b..0b763276f619 100644 --- a/include/linux/edac.h +++ b/include/linux/edac.h | |||
| @@ -561,7 +561,6 @@ struct csrow_info { | |||
| 561 | 561 | ||
| 562 | u32 ue_count; /* Uncorrectable Errors for this csrow */ | 562 | u32 ue_count; /* Uncorrectable Errors for this csrow */ |
| 563 | u32 ce_count; /* Correctable Errors for this csrow */ | 563 | u32 ce_count; /* Correctable Errors for this csrow */ |
| 564 | u32 nr_pages; /* combined pages count of all channels */ | ||
| 565 | 564 | ||
| 566 | struct mem_ctl_info *mci; /* the parent */ | 565 | struct mem_ctl_info *mci; /* the parent */ |
| 567 | 566 | ||
| @@ -676,11 +675,11 @@ struct mem_ctl_info { | |||
| 676 | * sees memory sticks ("dimms"), and the ones that sees memory ranks. | 675 | * sees memory sticks ("dimms"), and the ones that sees memory ranks. |
| 677 | * All old memory controllers enumerate memories per rank, but most | 676 | * All old memory controllers enumerate memories per rank, but most |
| 678 | * of the recent drivers enumerate memories per DIMM, instead. | 677 | * of the recent drivers enumerate memories per DIMM, instead. |
| 679 | * When the memory controller is per rank, mem_is_per_rank is true. | 678 | * When the memory controller is per rank, csbased is true. |
| 680 | */ | 679 | */ |
| 681 | unsigned n_layers; | 680 | unsigned n_layers; |
| 682 | struct edac_mc_layer *layers; | 681 | struct edac_mc_layer *layers; |
| 683 | bool mem_is_per_rank; | 682 | bool csbased; |
| 684 | 683 | ||
| 685 | /* | 684 | /* |
| 686 | * DIMM info. Will eventually remove the entire csrows_info some day | 685 | * DIMM info. Will eventually remove the entire csrows_info some day |
| @@ -741,8 +740,6 @@ struct mem_ctl_info { | |||
| 741 | u32 fake_inject_ue; | 740 | u32 fake_inject_ue; |
| 742 | u16 fake_inject_count; | 741 | u16 fake_inject_count; |
| 743 | #endif | 742 | #endif |
| 744 | __u8 csbased : 1, /* csrow-based memory controller */ | ||
| 745 | __resv : 7; | ||
| 746 | }; | 743 | }; |
| 747 | 744 | ||
| 748 | #endif | 745 | #endif |
diff --git a/include/linux/hash.h b/include/linux/hash.h index 61c97ae22e01..f09a0ae4d858 100644 --- a/include/linux/hash.h +++ b/include/linux/hash.h | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | */ | 15 | */ |
| 16 | 16 | ||
| 17 | #include <asm/types.h> | 17 | #include <asm/types.h> |
| 18 | #include <linux/compiler.h> | ||
| 18 | 19 | ||
| 19 | /* 2^31 + 2^29 - 2^25 + 2^22 - 2^19 - 2^16 + 1 */ | 20 | /* 2^31 + 2^29 - 2^25 + 2^22 - 2^19 - 2^16 + 1 */ |
| 20 | #define GOLDEN_RATIO_PRIME_32 0x9e370001UL | 21 | #define GOLDEN_RATIO_PRIME_32 0x9e370001UL |
| @@ -31,7 +32,7 @@ | |||
| 31 | #error Wordsize not 32 or 64 | 32 | #error Wordsize not 32 or 64 |
| 32 | #endif | 33 | #endif |
| 33 | 34 | ||
| 34 | static inline u64 hash_64(u64 val, unsigned int bits) | 35 | static __always_inline u64 hash_64(u64 val, unsigned int bits) |
| 35 | { | 36 | { |
| 36 | u64 hash = val; | 37 | u64 hash = val; |
| 37 | 38 | ||
diff --git a/include/linux/irq_work.h b/include/linux/irq_work.h index f5dbce50466e..66017028dcb3 100644 --- a/include/linux/irq_work.h +++ b/include/linux/irq_work.h | |||
| @@ -37,7 +37,7 @@ void irq_work_sync(struct irq_work *work); | |||
| 37 | #ifdef CONFIG_IRQ_WORK | 37 | #ifdef CONFIG_IRQ_WORK |
| 38 | bool irq_work_needs_cpu(void); | 38 | bool irq_work_needs_cpu(void); |
| 39 | #else | 39 | #else |
| 40 | static bool irq_work_needs_cpu(void) { return false; } | 40 | static inline bool irq_work_needs_cpu(void) { return false; } |
| 41 | #endif | 41 | #endif |
| 42 | 42 | ||
| 43 | #endif /* _LINUX_IRQ_WORK_H */ | 43 | #endif /* _LINUX_IRQ_WORK_H */ |
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 80d36874689b..79fdd80a42d4 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
| @@ -390,7 +390,6 @@ extern struct pid *session_of_pgrp(struct pid *pgrp); | |||
| 390 | unsigned long int_sqrt(unsigned long); | 390 | unsigned long int_sqrt(unsigned long); |
| 391 | 391 | ||
| 392 | extern void bust_spinlocks(int yes); | 392 | extern void bust_spinlocks(int yes); |
| 393 | extern void wake_up_klogd(void); | ||
| 394 | extern int oops_in_progress; /* If set, an oops, panic(), BUG() or die() is in progress */ | 393 | extern int oops_in_progress; /* If set, an oops, panic(), BUG() or die() is in progress */ |
| 395 | extern int panic_timeout; | 394 | extern int panic_timeout; |
| 396 | extern int panic_on_oops; | 395 | extern int panic_on_oops; |
diff --git a/include/linux/mfd/palmas.h b/include/linux/mfd/palmas.h index a4d13d7cd001..3bbda22721ea 100644 --- a/include/linux/mfd/palmas.h +++ b/include/linux/mfd/palmas.h | |||
| @@ -221,6 +221,7 @@ struct palmas_clk_platform_data { | |||
| 221 | }; | 221 | }; |
| 222 | 222 | ||
| 223 | struct palmas_platform_data { | 223 | struct palmas_platform_data { |
| 224 | int irq_flags; | ||
| 224 | int gpio_base; | 225 | int gpio_base; |
| 225 | 226 | ||
| 226 | /* bit value to be loaded to the POWER_CTRL register */ | 227 | /* bit value to be loaded to the POWER_CTRL register */ |
diff --git a/include/linux/mfd/tps65912.h b/include/linux/mfd/tps65912.h index aaceab402ec5..6d309032dc0d 100644 --- a/include/linux/mfd/tps65912.h +++ b/include/linux/mfd/tps65912.h | |||
| @@ -323,5 +323,6 @@ int tps65912_device_init(struct tps65912 *tps65912); | |||
| 323 | void tps65912_device_exit(struct tps65912 *tps65912); | 323 | void tps65912_device_exit(struct tps65912 *tps65912); |
| 324 | int tps65912_irq_init(struct tps65912 *tps65912, int irq, | 324 | int tps65912_irq_init(struct tps65912 *tps65912, int irq, |
| 325 | struct tps65912_platform_data *pdata); | 325 | struct tps65912_platform_data *pdata); |
| 326 | int tps65912_irq_exit(struct tps65912 *tps65912); | ||
| 326 | 327 | ||
| 327 | #endif /* __LINUX_MFD_TPS65912_H */ | 328 | #endif /* __LINUX_MFD_TPS65912_H */ |
diff --git a/include/linux/mfd/wm831x/auxadc.h b/include/linux/mfd/wm831x/auxadc.h index b132067e9e99..867aa23f9370 100644 --- a/include/linux/mfd/wm831x/auxadc.h +++ b/include/linux/mfd/wm831x/auxadc.h | |||
| @@ -15,6 +15,8 @@ | |||
| 15 | #ifndef __MFD_WM831X_AUXADC_H__ | 15 | #ifndef __MFD_WM831X_AUXADC_H__ |
| 16 | #define __MFD_WM831X_AUXADC_H__ | 16 | #define __MFD_WM831X_AUXADC_H__ |
| 17 | 17 | ||
| 18 | struct wm831x; | ||
| 19 | |||
| 18 | /* | 20 | /* |
| 19 | * R16429 (0x402D) - AuxADC Data | 21 | * R16429 (0x402D) - AuxADC Data |
| 20 | */ | 22 | */ |
diff --git a/include/linux/mfd/wm831x/core.h b/include/linux/mfd/wm831x/core.h index 4a3b83a77614..76c22648436f 100644 --- a/include/linux/mfd/wm831x/core.h +++ b/include/linux/mfd/wm831x/core.h | |||
| @@ -20,6 +20,7 @@ | |||
| 20 | #include <linux/irqdomain.h> | 20 | #include <linux/irqdomain.h> |
| 21 | #include <linux/list.h> | 21 | #include <linux/list.h> |
| 22 | #include <linux/regmap.h> | 22 | #include <linux/regmap.h> |
| 23 | #include <linux/mfd/wm831x/auxadc.h> | ||
| 23 | 24 | ||
| 24 | /* | 25 | /* |
| 25 | * Register values. | 26 | * Register values. |
| @@ -355,7 +356,6 @@ enum wm831x_parent { | |||
| 355 | }; | 356 | }; |
| 356 | 357 | ||
| 357 | struct wm831x; | 358 | struct wm831x; |
| 358 | enum wm831x_auxadc; | ||
| 359 | 359 | ||
| 360 | typedef int (*wm831x_auxadc_read_fn)(struct wm831x *wm831x, | 360 | typedef int (*wm831x_auxadc_read_fn)(struct wm831x *wm831x, |
| 361 | enum wm831x_auxadc input); | 361 | enum wm831x_auxadc input); |
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index ede274957e05..c74092eebf5c 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h | |||
| @@ -527,7 +527,7 @@ static inline int zone_is_oom_locked(const struct zone *zone) | |||
| 527 | return test_bit(ZONE_OOM_LOCKED, &zone->flags); | 527 | return test_bit(ZONE_OOM_LOCKED, &zone->flags); |
| 528 | } | 528 | } |
| 529 | 529 | ||
| 530 | static inline unsigned zone_end_pfn(const struct zone *zone) | 530 | static inline unsigned long zone_end_pfn(const struct zone *zone) |
| 531 | { | 531 | { |
| 532 | return zone->zone_start_pfn + zone->spanned_pages; | 532 | return zone->zone_start_pfn + zone->spanned_pages; |
| 533 | } | 533 | } |
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h index 7ccb3c59ed60..ef52d9c91459 100644 --- a/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h | |||
| @@ -187,6 +187,13 @@ typedef enum { | |||
| 187 | * This happens with the Renesas AG-AND chips, possibly others. | 187 | * This happens with the Renesas AG-AND chips, possibly others. |
| 188 | */ | 188 | */ |
| 189 | #define BBT_AUTO_REFRESH 0x00000080 | 189 | #define BBT_AUTO_REFRESH 0x00000080 |
| 190 | /* | ||
| 191 | * Chip requires ready check on read (for auto-incremented sequential read). | ||
| 192 | * True only for small page devices; large page devices do not support | ||
| 193 | * autoincrement. | ||
| 194 | */ | ||
| 195 | #define NAND_NEED_READRDY 0x00000100 | ||
| 196 | |||
| 190 | /* Chip does not allow subpage writes */ | 197 | /* Chip does not allow subpage writes */ |
| 191 | #define NAND_NO_SUBPAGE_WRITE 0x00000200 | 198 | #define NAND_NO_SUBPAGE_WRITE 0x00000200 |
| 192 | 199 | ||
diff --git a/include/linux/nvme.h b/include/linux/nvme.h index c25cccaa555a..4fa3b0b9b071 100644 --- a/include/linux/nvme.h +++ b/include/linux/nvme.h | |||
| @@ -137,6 +137,34 @@ enum { | |||
| 137 | NVME_LBAF_RP_DEGRADED = 3, | 137 | NVME_LBAF_RP_DEGRADED = 3, |
| 138 | }; | 138 | }; |
| 139 | 139 | ||
| 140 | struct nvme_smart_log { | ||
| 141 | __u8 critical_warning; | ||
| 142 | __u8 temperature[2]; | ||
| 143 | __u8 avail_spare; | ||
| 144 | __u8 spare_thresh; | ||
| 145 | __u8 percent_used; | ||
| 146 | __u8 rsvd6[26]; | ||
| 147 | __u8 data_units_read[16]; | ||
| 148 | __u8 data_units_written[16]; | ||
| 149 | __u8 host_reads[16]; | ||
| 150 | __u8 host_writes[16]; | ||
| 151 | __u8 ctrl_busy_time[16]; | ||
| 152 | __u8 power_cycles[16]; | ||
| 153 | __u8 power_on_hours[16]; | ||
| 154 | __u8 unsafe_shutdowns[16]; | ||
| 155 | __u8 media_errors[16]; | ||
| 156 | __u8 num_err_log_entries[16]; | ||
| 157 | __u8 rsvd192[320]; | ||
| 158 | }; | ||
| 159 | |||
| 160 | enum { | ||
| 161 | NVME_SMART_CRIT_SPARE = 1 << 0, | ||
| 162 | NVME_SMART_CRIT_TEMPERATURE = 1 << 1, | ||
| 163 | NVME_SMART_CRIT_RELIABILITY = 1 << 2, | ||
| 164 | NVME_SMART_CRIT_MEDIA = 1 << 3, | ||
| 165 | NVME_SMART_CRIT_VOLATILE_MEMORY = 1 << 4, | ||
| 166 | }; | ||
| 167 | |||
| 140 | struct nvme_lba_range_type { | 168 | struct nvme_lba_range_type { |
| 141 | __u8 type; | 169 | __u8 type; |
| 142 | __u8 attributes; | 170 | __u8 attributes; |
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h index 71caed8626be..1d795df6f4cf 100644 --- a/include/linux/perf_event.h +++ b/include/linux/perf_event.h | |||
| @@ -758,7 +758,6 @@ extern void perf_event_enable(struct perf_event *event); | |||
| 758 | extern void perf_event_disable(struct perf_event *event); | 758 | extern void perf_event_disable(struct perf_event *event); |
| 759 | extern int __perf_event_disable(void *info); | 759 | extern int __perf_event_disable(void *info); |
| 760 | extern void perf_event_task_tick(void); | 760 | extern void perf_event_task_tick(void); |
| 761 | extern void perf_restore_debug_store(void); | ||
| 762 | #else | 761 | #else |
| 763 | static inline void | 762 | static inline void |
| 764 | perf_event_task_sched_in(struct task_struct *prev, | 763 | perf_event_task_sched_in(struct task_struct *prev, |
| @@ -798,6 +797,11 @@ static inline void perf_event_enable(struct perf_event *event) { } | |||
| 798 | static inline void perf_event_disable(struct perf_event *event) { } | 797 | static inline void perf_event_disable(struct perf_event *event) { } |
| 799 | static inline int __perf_event_disable(void *info) { return -1; } | 798 | static inline int __perf_event_disable(void *info) { return -1; } |
| 800 | static inline void perf_event_task_tick(void) { } | 799 | static inline void perf_event_task_tick(void) { } |
| 800 | #endif | ||
| 801 | |||
| 802 | #if defined(CONFIG_PERF_EVENTS) && defined(CONFIG_CPU_SUP_INTEL) | ||
| 803 | extern void perf_restore_debug_store(void); | ||
| 804 | #else | ||
| 801 | static inline void perf_restore_debug_store(void) { } | 805 | static inline void perf_restore_debug_store(void) { } |
| 802 | #endif | 806 | #endif |
| 803 | 807 | ||
diff --git a/include/linux/printk.h b/include/linux/printk.h index 1249a54d17e0..822171fcb1c8 100644 --- a/include/linux/printk.h +++ b/include/linux/printk.h | |||
| @@ -134,6 +134,8 @@ extern int printk_delay_msec; | |||
| 134 | extern int dmesg_restrict; | 134 | extern int dmesg_restrict; |
| 135 | extern int kptr_restrict; | 135 | extern int kptr_restrict; |
| 136 | 136 | ||
| 137 | extern void wake_up_klogd(void); | ||
| 138 | |||
| 137 | void log_buf_kexec_setup(void); | 139 | void log_buf_kexec_setup(void); |
| 138 | void __init setup_log_buf(int early); | 140 | void __init setup_log_buf(int early); |
| 139 | #else | 141 | #else |
| @@ -162,6 +164,10 @@ static inline bool printk_timed_ratelimit(unsigned long *caller_jiffies, | |||
| 162 | return false; | 164 | return false; |
| 163 | } | 165 | } |
| 164 | 166 | ||
| 167 | static inline void wake_up_klogd(void) | ||
| 168 | { | ||
| 169 | } | ||
| 170 | |||
| 165 | static inline void log_buf_kexec_setup(void) | 171 | static inline void log_buf_kexec_setup(void) |
| 166 | { | 172 | { |
| 167 | } | 173 | } |
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 821c7f45d2a7..441f5bfdab8e 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
| @@ -500,7 +500,7 @@ struct sk_buff { | |||
| 500 | union { | 500 | union { |
| 501 | __u32 mark; | 501 | __u32 mark; |
| 502 | __u32 dropcount; | 502 | __u32 dropcount; |
| 503 | __u32 avail_size; | 503 | __u32 reserved_tailroom; |
| 504 | }; | 504 | }; |
| 505 | 505 | ||
| 506 | sk_buff_data_t inner_transport_header; | 506 | sk_buff_data_t inner_transport_header; |
| @@ -1288,11 +1288,13 @@ static inline void __skb_fill_page_desc(struct sk_buff *skb, int i, | |||
| 1288 | * do not lose pfmemalloc information as the pages would not be | 1288 | * do not lose pfmemalloc information as the pages would not be |
| 1289 | * allocated using __GFP_MEMALLOC. | 1289 | * allocated using __GFP_MEMALLOC. |
| 1290 | */ | 1290 | */ |
| 1291 | if (page->pfmemalloc && !page->mapping) | ||
| 1292 | skb->pfmemalloc = true; | ||
| 1293 | frag->page.p = page; | 1291 | frag->page.p = page; |
| 1294 | frag->page_offset = off; | 1292 | frag->page_offset = off; |
| 1295 | skb_frag_size_set(frag, size); | 1293 | skb_frag_size_set(frag, size); |
| 1294 | |||
| 1295 | page = compound_head(page); | ||
| 1296 | if (page->pfmemalloc && !page->mapping) | ||
| 1297 | skb->pfmemalloc = true; | ||
| 1296 | } | 1298 | } |
| 1297 | 1299 | ||
| 1298 | /** | 1300 | /** |
| @@ -1447,7 +1449,10 @@ static inline int skb_tailroom(const struct sk_buff *skb) | |||
| 1447 | */ | 1449 | */ |
| 1448 | static inline int skb_availroom(const struct sk_buff *skb) | 1450 | static inline int skb_availroom(const struct sk_buff *skb) |
| 1449 | { | 1451 | { |
| 1450 | return skb_is_nonlinear(skb) ? 0 : skb->avail_size - skb->len; | 1452 | if (skb_is_nonlinear(skb)) |
| 1453 | return 0; | ||
| 1454 | |||
| 1455 | return skb->end - skb->tail - skb->reserved_tailroom; | ||
| 1451 | } | 1456 | } |
| 1452 | 1457 | ||
| 1453 | /** | 1458 | /** |
diff --git a/include/linux/usb/cdc_ncm.h b/include/linux/usb/cdc_ncm.h index 3b8f9d4fc3fe..cc25b70af33c 100644 --- a/include/linux/usb/cdc_ncm.h +++ b/include/linux/usb/cdc_ncm.h | |||
| @@ -127,6 +127,7 @@ struct cdc_ncm_ctx { | |||
| 127 | u16 connected; | 127 | u16 connected; |
| 128 | }; | 128 | }; |
| 129 | 129 | ||
| 130 | extern u8 cdc_ncm_select_altsetting(struct usbnet *dev, struct usb_interface *intf); | ||
| 130 | extern int cdc_ncm_bind_common(struct usbnet *dev, struct usb_interface *intf, u8 data_altsetting); | 131 | extern int cdc_ncm_bind_common(struct usbnet *dev, struct usb_interface *intf, u8 data_altsetting); |
| 131 | extern void cdc_ncm_unbind(struct usbnet *dev, struct usb_interface *intf); | 132 | extern void cdc_ncm_unbind(struct usbnet *dev, struct usb_interface *intf); |
| 132 | extern struct sk_buff *cdc_ncm_fill_tx_frame(struct cdc_ncm_ctx *ctx, struct sk_buff *skb, __le32 sign); | 133 | extern struct sk_buff *cdc_ncm_fill_tx_frame(struct cdc_ncm_ctx *ctx, struct sk_buff *skb, __le32 sign); |
diff --git a/include/linux/usb/serial.h b/include/linux/usb/serial.h index ef9be7e1e190..1819b59aab2a 100644 --- a/include/linux/usb/serial.h +++ b/include/linux/usb/serial.h | |||
| @@ -66,6 +66,7 @@ | |||
| 66 | * port. | 66 | * port. |
| 67 | * @flags: usb serial port flags | 67 | * @flags: usb serial port flags |
| 68 | * @write_wait: a wait_queue_head_t used by the port. | 68 | * @write_wait: a wait_queue_head_t used by the port. |
| 69 | * @delta_msr_wait: modem-status-change wait queue | ||
| 69 | * @work: work queue entry for the line discipline waking up. | 70 | * @work: work queue entry for the line discipline waking up. |
| 70 | * @throttled: nonzero if the read urb is inactive to throttle the device | 71 | * @throttled: nonzero if the read urb is inactive to throttle the device |
| 71 | * @throttle_req: nonzero if the tty wants to throttle us | 72 | * @throttle_req: nonzero if the tty wants to throttle us |
| @@ -112,6 +113,7 @@ struct usb_serial_port { | |||
| 112 | 113 | ||
| 113 | unsigned long flags; | 114 | unsigned long flags; |
| 114 | wait_queue_head_t write_wait; | 115 | wait_queue_head_t write_wait; |
| 116 | wait_queue_head_t delta_msr_wait; | ||
| 115 | struct work_struct work; | 117 | struct work_struct work; |
| 116 | char throttled; | 118 | char throttled; |
| 117 | char throttle_req; | 119 | char throttle_req; |
diff --git a/include/linux/usb/ulpi.h b/include/linux/usb/ulpi.h index 6f033a415ecb..5c295c26ad37 100644 --- a/include/linux/usb/ulpi.h +++ b/include/linux/usb/ulpi.h | |||
| @@ -181,8 +181,16 @@ | |||
| 181 | 181 | ||
| 182 | /*-------------------------------------------------------------------------*/ | 182 | /*-------------------------------------------------------------------------*/ |
| 183 | 183 | ||
| 184 | #if IS_ENABLED(CONFIG_USB_ULPI) | ||
| 184 | struct usb_phy *otg_ulpi_create(struct usb_phy_io_ops *ops, | 185 | struct usb_phy *otg_ulpi_create(struct usb_phy_io_ops *ops, |
| 185 | unsigned int flags); | 186 | unsigned int flags); |
| 187 | #else | ||
| 188 | static inline struct usb_phy *otg_ulpi_create(struct usb_phy_io_ops *ops, | ||
| 189 | unsigned int flags) | ||
| 190 | { | ||
| 191 | return NULL; | ||
| 192 | } | ||
| 193 | #endif | ||
| 186 | 194 | ||
| 187 | #ifdef CONFIG_USB_ULPI_VIEWPORT | 195 | #ifdef CONFIG_USB_ULPI_VIEWPORT |
| 188 | /* access ops for controllers with a viewport register */ | 196 | /* access ops for controllers with a viewport register */ |
diff --git a/include/net/dst.h b/include/net/dst.h index 853cda11e518..1f8fd109e225 100644 --- a/include/net/dst.h +++ b/include/net/dst.h | |||
| @@ -413,13 +413,15 @@ static inline int dst_neigh_output(struct dst_entry *dst, struct neighbour *n, | |||
| 413 | 413 | ||
| 414 | static inline struct neighbour *dst_neigh_lookup(const struct dst_entry *dst, const void *daddr) | 414 | static inline struct neighbour *dst_neigh_lookup(const struct dst_entry *dst, const void *daddr) |
| 415 | { | 415 | { |
| 416 | return dst->ops->neigh_lookup(dst, NULL, daddr); | 416 | struct neighbour *n = dst->ops->neigh_lookup(dst, NULL, daddr); |
| 417 | return IS_ERR(n) ? NULL : n; | ||
| 417 | } | 418 | } |
| 418 | 419 | ||
| 419 | static inline struct neighbour *dst_neigh_lookup_skb(const struct dst_entry *dst, | 420 | static inline struct neighbour *dst_neigh_lookup_skb(const struct dst_entry *dst, |
| 420 | struct sk_buff *skb) | 421 | struct sk_buff *skb) |
| 421 | { | 422 | { |
| 422 | return dst->ops->neigh_lookup(dst, skb, NULL); | 423 | struct neighbour *n = dst->ops->neigh_lookup(dst, skb, NULL); |
| 424 | return IS_ERR(n) ? NULL : n; | ||
| 423 | } | 425 | } |
| 424 | 426 | ||
| 425 | static inline void dst_link_failure(struct sk_buff *skb) | 427 | static inline void dst_link_failure(struct sk_buff *skb) |
diff --git a/include/net/inet_frag.h b/include/net/inet_frag.h index 76c3fe5ecc2e..0a1dcc2fa2f5 100644 --- a/include/net/inet_frag.h +++ b/include/net/inet_frag.h | |||
| @@ -43,6 +43,13 @@ struct inet_frag_queue { | |||
| 43 | 43 | ||
| 44 | #define INETFRAGS_HASHSZ 64 | 44 | #define INETFRAGS_HASHSZ 64 |
| 45 | 45 | ||
| 46 | /* averaged: | ||
| 47 | * max_depth = default ipfrag_high_thresh / INETFRAGS_HASHSZ / | ||
| 48 | * rounded up (SKB_TRUELEN(0) + sizeof(struct ipq or | ||
| 49 | * struct frag_queue)) | ||
| 50 | */ | ||
| 51 | #define INETFRAGS_MAXDEPTH 128 | ||
| 52 | |||
| 46 | struct inet_frags { | 53 | struct inet_frags { |
| 47 | struct hlist_head hash[INETFRAGS_HASHSZ]; | 54 | struct hlist_head hash[INETFRAGS_HASHSZ]; |
| 48 | /* This rwlock is a global lock (seperate per IPv4, IPv6 and | 55 | /* This rwlock is a global lock (seperate per IPv4, IPv6 and |
| @@ -76,6 +83,8 @@ int inet_frag_evictor(struct netns_frags *nf, struct inet_frags *f, bool force); | |||
| 76 | struct inet_frag_queue *inet_frag_find(struct netns_frags *nf, | 83 | struct inet_frag_queue *inet_frag_find(struct netns_frags *nf, |
| 77 | struct inet_frags *f, void *key, unsigned int hash) | 84 | struct inet_frags *f, void *key, unsigned int hash) |
| 78 | __releases(&f->lock); | 85 | __releases(&f->lock); |
| 86 | void inet_frag_maybe_warn_overflow(struct inet_frag_queue *q, | ||
| 87 | const char *prefix); | ||
| 79 | 88 | ||
| 80 | static inline void inet_frag_put(struct inet_frag_queue *q, struct inet_frags *f) | 89 | static inline void inet_frag_put(struct inet_frag_queue *q, struct inet_frags *f) |
| 81 | { | 90 | { |
diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h index 9497be1ad4c0..e49db91593a9 100644 --- a/include/net/ip_fib.h +++ b/include/net/ip_fib.h | |||
| @@ -152,18 +152,16 @@ struct fib_result_nl { | |||
| 152 | }; | 152 | }; |
| 153 | 153 | ||
| 154 | #ifdef CONFIG_IP_ROUTE_MULTIPATH | 154 | #ifdef CONFIG_IP_ROUTE_MULTIPATH |
| 155 | |||
| 156 | #define FIB_RES_NH(res) ((res).fi->fib_nh[(res).nh_sel]) | 155 | #define FIB_RES_NH(res) ((res).fi->fib_nh[(res).nh_sel]) |
| 157 | |||
| 158 | #define FIB_TABLE_HASHSZ 2 | ||
| 159 | |||
| 160 | #else /* CONFIG_IP_ROUTE_MULTIPATH */ | 156 | #else /* CONFIG_IP_ROUTE_MULTIPATH */ |
| 161 | |||
| 162 | #define FIB_RES_NH(res) ((res).fi->fib_nh[0]) | 157 | #define FIB_RES_NH(res) ((res).fi->fib_nh[0]) |
| 158 | #endif /* CONFIG_IP_ROUTE_MULTIPATH */ | ||
| 163 | 159 | ||
| 160 | #ifdef CONFIG_IP_MULTIPLE_TABLES | ||
| 164 | #define FIB_TABLE_HASHSZ 256 | 161 | #define FIB_TABLE_HASHSZ 256 |
| 165 | 162 | #else | |
| 166 | #endif /* CONFIG_IP_ROUTE_MULTIPATH */ | 163 | #define FIB_TABLE_HASHSZ 2 |
| 164 | #endif | ||
| 167 | 165 | ||
| 168 | extern __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh); | 166 | extern __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh); |
| 169 | 167 | ||
diff --git a/include/video/atmel_lcdc.h b/include/video/atmel_lcdc.h index 28447f1594fa..8deb22672ada 100644 --- a/include/video/atmel_lcdc.h +++ b/include/video/atmel_lcdc.h | |||
| @@ -30,7 +30,6 @@ | |||
| 30 | */ | 30 | */ |
| 31 | #define ATMEL_LCDC_WIRING_BGR 0 | 31 | #define ATMEL_LCDC_WIRING_BGR 0 |
| 32 | #define ATMEL_LCDC_WIRING_RGB 1 | 32 | #define ATMEL_LCDC_WIRING_RGB 1 |
| 33 | #define ATMEL_LCDC_WIRING_RGB555 2 | ||
| 34 | 33 | ||
| 35 | 34 | ||
| 36 | /* LCD Controller info data structure, stored in device platform_data */ | 35 | /* LCD Controller info data structure, stored in device platform_data */ |
| @@ -62,6 +61,7 @@ struct atmel_lcdfb_info { | |||
| 62 | void (*atmel_lcdfb_power_control)(int on); | 61 | void (*atmel_lcdfb_power_control)(int on); |
| 63 | struct fb_monspecs *default_monspecs; | 62 | struct fb_monspecs *default_monspecs; |
| 64 | u32 pseudo_palette[16]; | 63 | u32 pseudo_palette[16]; |
| 64 | bool have_intensity_bit; | ||
| 65 | }; | 65 | }; |
| 66 | 66 | ||
| 67 | #define ATMEL_LCDC_DMABADDR1 0x00 | 67 | #define ATMEL_LCDC_DMABADDR1 0x00 |
