diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/bug.h | 1 | ||||
-rw-r--r-- | include/linux/fs.h | 5 | ||||
-rw-r--r-- | include/linux/gfp.h | 5 | ||||
-rw-r--r-- | include/linux/hw_breakpoint.h | 31 | ||||
-rw-r--r-- | include/linux/kernel.h | 7 | ||||
-rw-r--r-- | include/linux/mempolicy.h | 16 | ||||
-rw-r--r-- | include/linux/netdevice.h | 3 | ||||
-rw-r--r-- | include/linux/percpu-rwsem.h | 4 |
8 files changed, 18 insertions, 54 deletions
diff --git a/include/linux/bug.h b/include/linux/bug.h index aaac4bba6f5..b1cf40de847 100644 --- a/include/linux/bug.h +++ b/include/linux/bug.h | |||
@@ -15,6 +15,7 @@ struct pt_regs; | |||
15 | #define BUILD_BUG_ON_NOT_POWER_OF_2(n) | 15 | #define BUILD_BUG_ON_NOT_POWER_OF_2(n) |
16 | #define BUILD_BUG_ON_ZERO(e) (0) | 16 | #define BUILD_BUG_ON_ZERO(e) (0) |
17 | #define BUILD_BUG_ON_NULL(e) ((void*)0) | 17 | #define BUILD_BUG_ON_NULL(e) ((void*)0) |
18 | #define BUILD_BUG_ON_INVALID(e) (0) | ||
18 | #define BUILD_BUG_ON(condition) | 19 | #define BUILD_BUG_ON(condition) |
19 | #define BUILD_BUG() (0) | 20 | #define BUILD_BUG() (0) |
20 | #else /* __CHECKER__ */ | 21 | #else /* __CHECKER__ */ |
diff --git a/include/linux/fs.h b/include/linux/fs.h index b33cfc97b9c..75fe9a13480 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -462,8 +462,6 @@ struct block_device { | |||
462 | int bd_fsfreeze_count; | 462 | int bd_fsfreeze_count; |
463 | /* Mutex for freeze */ | 463 | /* Mutex for freeze */ |
464 | struct mutex bd_fsfreeze_mutex; | 464 | struct mutex bd_fsfreeze_mutex; |
465 | /* A semaphore that prevents I/O while block size is being changed */ | ||
466 | struct percpu_rw_semaphore bd_block_size_semaphore; | ||
467 | }; | 465 | }; |
468 | 466 | ||
469 | /* | 467 | /* |
@@ -2049,7 +2047,6 @@ extern void unregister_blkdev(unsigned int, const char *); | |||
2049 | extern struct block_device *bdget(dev_t); | 2047 | extern struct block_device *bdget(dev_t); |
2050 | extern struct block_device *bdgrab(struct block_device *bdev); | 2048 | extern struct block_device *bdgrab(struct block_device *bdev); |
2051 | extern void bd_set_size(struct block_device *, loff_t size); | 2049 | extern void bd_set_size(struct block_device *, loff_t size); |
2052 | extern sector_t blkdev_max_block(struct block_device *bdev); | ||
2053 | extern void bd_forget(struct inode *inode); | 2050 | extern void bd_forget(struct inode *inode); |
2054 | extern void bdput(struct block_device *); | 2051 | extern void bdput(struct block_device *); |
2055 | extern void invalidate_bdev(struct block_device *); | 2052 | extern void invalidate_bdev(struct block_device *); |
@@ -2379,8 +2376,6 @@ extern int generic_segment_checks(const struct iovec *iov, | |||
2379 | unsigned long *nr_segs, size_t *count, int access_flags); | 2376 | unsigned long *nr_segs, size_t *count, int access_flags); |
2380 | 2377 | ||
2381 | /* fs/block_dev.c */ | 2378 | /* fs/block_dev.c */ |
2382 | extern ssize_t blkdev_aio_read(struct kiocb *iocb, const struct iovec *iov, | ||
2383 | unsigned long nr_segs, loff_t pos); | ||
2384 | extern ssize_t blkdev_aio_write(struct kiocb *iocb, const struct iovec *iov, | 2379 | extern ssize_t blkdev_aio_write(struct kiocb *iocb, const struct iovec *iov, |
2385 | unsigned long nr_segs, loff_t pos); | 2380 | unsigned long nr_segs, loff_t pos); |
2386 | extern int blkdev_fsync(struct file *filp, loff_t start, loff_t end, | 2381 | extern int blkdev_fsync(struct file *filp, loff_t start, loff_t end, |
diff --git a/include/linux/gfp.h b/include/linux/gfp.h index 02c1c9710be..d0a79678f16 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h | |||
@@ -31,6 +31,7 @@ struct vm_area_struct; | |||
31 | #define ___GFP_THISNODE 0x40000u | 31 | #define ___GFP_THISNODE 0x40000u |
32 | #define ___GFP_RECLAIMABLE 0x80000u | 32 | #define ___GFP_RECLAIMABLE 0x80000u |
33 | #define ___GFP_NOTRACK 0x200000u | 33 | #define ___GFP_NOTRACK 0x200000u |
34 | #define ___GFP_NO_KSWAPD 0x400000u | ||
34 | #define ___GFP_OTHER_NODE 0x800000u | 35 | #define ___GFP_OTHER_NODE 0x800000u |
35 | #define ___GFP_WRITE 0x1000000u | 36 | #define ___GFP_WRITE 0x1000000u |
36 | 37 | ||
@@ -85,6 +86,7 @@ struct vm_area_struct; | |||
85 | #define __GFP_RECLAIMABLE ((__force gfp_t)___GFP_RECLAIMABLE) /* Page is reclaimable */ | 86 | #define __GFP_RECLAIMABLE ((__force gfp_t)___GFP_RECLAIMABLE) /* Page is reclaimable */ |
86 | #define __GFP_NOTRACK ((__force gfp_t)___GFP_NOTRACK) /* Don't track with kmemcheck */ | 87 | #define __GFP_NOTRACK ((__force gfp_t)___GFP_NOTRACK) /* Don't track with kmemcheck */ |
87 | 88 | ||
89 | #define __GFP_NO_KSWAPD ((__force gfp_t)___GFP_NO_KSWAPD) | ||
88 | #define __GFP_OTHER_NODE ((__force gfp_t)___GFP_OTHER_NODE) /* On behalf of other node */ | 90 | #define __GFP_OTHER_NODE ((__force gfp_t)___GFP_OTHER_NODE) /* On behalf of other node */ |
89 | #define __GFP_WRITE ((__force gfp_t)___GFP_WRITE) /* Allocator intends to dirty page */ | 91 | #define __GFP_WRITE ((__force gfp_t)___GFP_WRITE) /* Allocator intends to dirty page */ |
90 | 92 | ||
@@ -114,7 +116,8 @@ struct vm_area_struct; | |||
114 | __GFP_MOVABLE) | 116 | __GFP_MOVABLE) |
115 | #define GFP_IOFS (__GFP_IO | __GFP_FS) | 117 | #define GFP_IOFS (__GFP_IO | __GFP_FS) |
116 | #define GFP_TRANSHUGE (GFP_HIGHUSER_MOVABLE | __GFP_COMP | \ | 118 | #define GFP_TRANSHUGE (GFP_HIGHUSER_MOVABLE | __GFP_COMP | \ |
117 | __GFP_NOMEMALLOC | __GFP_NORETRY | __GFP_NOWARN) | 119 | __GFP_NOMEMALLOC | __GFP_NORETRY | __GFP_NOWARN | \ |
120 | __GFP_NO_KSWAPD) | ||
118 | 121 | ||
119 | #ifdef CONFIG_NUMA | 122 | #ifdef CONFIG_NUMA |
120 | #define GFP_THISNODE (__GFP_THISNODE | __GFP_NOWARN | __GFP_NORETRY) | 123 | #define GFP_THISNODE (__GFP_THISNODE | __GFP_NOWARN | __GFP_NORETRY) |
diff --git a/include/linux/hw_breakpoint.h b/include/linux/hw_breakpoint.h index 6ae9c631a1b..0464c85e63f 100644 --- a/include/linux/hw_breakpoint.h +++ b/include/linux/hw_breakpoint.h | |||
@@ -1,35 +1,8 @@ | |||
1 | #ifndef _LINUX_HW_BREAKPOINT_H | 1 | #ifndef _LINUX_HW_BREAKPOINT_H |
2 | #define _LINUX_HW_BREAKPOINT_H | 2 | #define _LINUX_HW_BREAKPOINT_H |
3 | 3 | ||
4 | enum { | ||
5 | HW_BREAKPOINT_LEN_1 = 1, | ||
6 | HW_BREAKPOINT_LEN_2 = 2, | ||
7 | HW_BREAKPOINT_LEN_4 = 4, | ||
8 | HW_BREAKPOINT_LEN_8 = 8, | ||
9 | }; | ||
10 | |||
11 | enum { | ||
12 | HW_BREAKPOINT_EMPTY = 0, | ||
13 | HW_BREAKPOINT_R = 1, | ||
14 | HW_BREAKPOINT_W = 2, | ||
15 | HW_BREAKPOINT_RW = HW_BREAKPOINT_R | HW_BREAKPOINT_W, | ||
16 | HW_BREAKPOINT_X = 4, | ||
17 | HW_BREAKPOINT_INVALID = HW_BREAKPOINT_RW | HW_BREAKPOINT_X, | ||
18 | }; | ||
19 | |||
20 | enum bp_type_idx { | ||
21 | TYPE_INST = 0, | ||
22 | #ifdef CONFIG_HAVE_MIXED_BREAKPOINTS_REGS | ||
23 | TYPE_DATA = 0, | ||
24 | #else | ||
25 | TYPE_DATA = 1, | ||
26 | #endif | ||
27 | TYPE_MAX | ||
28 | }; | ||
29 | |||
30 | #ifdef __KERNEL__ | ||
31 | |||
32 | #include <linux/perf_event.h> | 4 | #include <linux/perf_event.h> |
5 | #include <uapi/linux/hw_breakpoint.h> | ||
33 | 6 | ||
34 | #ifdef CONFIG_HAVE_HW_BREAKPOINT | 7 | #ifdef CONFIG_HAVE_HW_BREAKPOINT |
35 | 8 | ||
@@ -151,6 +124,4 @@ static inline struct arch_hw_breakpoint *counter_arch_bp(struct perf_event *bp) | |||
151 | } | 124 | } |
152 | 125 | ||
153 | #endif /* CONFIG_HAVE_HW_BREAKPOINT */ | 126 | #endif /* CONFIG_HAVE_HW_BREAKPOINT */ |
154 | #endif /* __KERNEL__ */ | ||
155 | |||
156 | #endif /* _LINUX_HW_BREAKPOINT_H */ | 127 | #endif /* _LINUX_HW_BREAKPOINT_H */ |
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index a123b13b70f..7d8dfc7392f 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
@@ -701,6 +701,13 @@ static inline void ftrace_dump(enum ftrace_dump_mode oops_dump_mode) { } | |||
701 | #define COMPACTION_BUILD 0 | 701 | #define COMPACTION_BUILD 0 |
702 | #endif | 702 | #endif |
703 | 703 | ||
704 | /* This helps us to avoid #ifdef CONFIG_SYMBOL_PREFIX */ | ||
705 | #ifdef CONFIG_SYMBOL_PREFIX | ||
706 | #define SYMBOL_PREFIX CONFIG_SYMBOL_PREFIX | ||
707 | #else | ||
708 | #define SYMBOL_PREFIX "" | ||
709 | #endif | ||
710 | |||
704 | /* Rebuild everything on CONFIG_FTRACE_MCOUNT_RECORD */ | 711 | /* Rebuild everything on CONFIG_FTRACE_MCOUNT_RECORD */ |
705 | #ifdef CONFIG_FTRACE_MCOUNT_RECORD | 712 | #ifdef CONFIG_FTRACE_MCOUNT_RECORD |
706 | # define REBUILD_DUE_TO_FTRACE_MCOUNT_RECORD | 713 | # define REBUILD_DUE_TO_FTRACE_MCOUNT_RECORD |
diff --git a/include/linux/mempolicy.h b/include/linux/mempolicy.h index e5ccb9ddd90..dbd212723b7 100644 --- a/include/linux/mempolicy.h +++ b/include/linux/mempolicy.h | |||
@@ -82,16 +82,6 @@ static inline void mpol_cond_put(struct mempolicy *pol) | |||
82 | __mpol_put(pol); | 82 | __mpol_put(pol); |
83 | } | 83 | } |
84 | 84 | ||
85 | extern struct mempolicy *__mpol_cond_copy(struct mempolicy *tompol, | ||
86 | struct mempolicy *frompol); | ||
87 | static inline struct mempolicy *mpol_cond_copy(struct mempolicy *tompol, | ||
88 | struct mempolicy *frompol) | ||
89 | { | ||
90 | if (!frompol) | ||
91 | return frompol; | ||
92 | return __mpol_cond_copy(tompol, frompol); | ||
93 | } | ||
94 | |||
95 | extern struct mempolicy *__mpol_dup(struct mempolicy *pol); | 85 | extern struct mempolicy *__mpol_dup(struct mempolicy *pol); |
96 | static inline struct mempolicy *mpol_dup(struct mempolicy *pol) | 86 | static inline struct mempolicy *mpol_dup(struct mempolicy *pol) |
97 | { | 87 | { |
@@ -215,12 +205,6 @@ static inline void mpol_cond_put(struct mempolicy *pol) | |||
215 | { | 205 | { |
216 | } | 206 | } |
217 | 207 | ||
218 | static inline struct mempolicy *mpol_cond_copy(struct mempolicy *to, | ||
219 | struct mempolicy *from) | ||
220 | { | ||
221 | return from; | ||
222 | } | ||
223 | |||
224 | static inline void mpol_get(struct mempolicy *pol) | 208 | static inline void mpol_get(struct mempolicy *pol) |
225 | { | 209 | { |
226 | } | 210 | } |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index f8eda0276f0..a848ffc327f 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -1488,6 +1488,9 @@ struct napi_gro_cb { | |||
1488 | 1488 | ||
1489 | /* Used in ipv6_gro_receive() */ | 1489 | /* Used in ipv6_gro_receive() */ |
1490 | int proto; | 1490 | int proto; |
1491 | |||
1492 | /* used in skb_gro_receive() slow path */ | ||
1493 | struct sk_buff *last; | ||
1491 | }; | 1494 | }; |
1492 | 1495 | ||
1493 | #define NAPI_GRO_CB(skb) ((struct napi_gro_cb *)(skb)->cb) | 1496 | #define NAPI_GRO_CB(skb) ((struct napi_gro_cb *)(skb)->cb) |
diff --git a/include/linux/percpu-rwsem.h b/include/linux/percpu-rwsem.h index 250a4acddb2..bd1e86071e5 100644 --- a/include/linux/percpu-rwsem.h +++ b/include/linux/percpu-rwsem.h | |||
@@ -13,7 +13,7 @@ struct percpu_rw_semaphore { | |||
13 | }; | 13 | }; |
14 | 14 | ||
15 | #define light_mb() barrier() | 15 | #define light_mb() barrier() |
16 | #define heavy_mb() synchronize_sched() | 16 | #define heavy_mb() synchronize_sched_expedited() |
17 | 17 | ||
18 | static inline void percpu_down_read(struct percpu_rw_semaphore *p) | 18 | static inline void percpu_down_read(struct percpu_rw_semaphore *p) |
19 | { | 19 | { |
@@ -51,7 +51,7 @@ static inline void percpu_down_write(struct percpu_rw_semaphore *p) | |||
51 | { | 51 | { |
52 | mutex_lock(&p->mtx); | 52 | mutex_lock(&p->mtx); |
53 | p->locked = true; | 53 | p->locked = true; |
54 | synchronize_sched(); /* make sure that all readers exit the rcu_read_lock_sched region */ | 54 | synchronize_sched_expedited(); /* make sure that all readers exit the rcu_read_lock_sched region */ |
55 | while (__percpu_count(p->counters)) | 55 | while (__percpu_count(p->counters)) |
56 | msleep(1); | 56 | msleep(1); |
57 | heavy_mb(); /* C, between read of p->counter and write to data, paired with B */ | 57 | heavy_mb(); /* C, between read of p->counter and write to data, paired with B */ |