diff options
| author | David S. Miller <davem@davemloft.net> | 2016-07-23 19:31:37 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2016-07-24 00:53:32 -0400 |
| commit | de0ba9a0d8909996f9e293d311c2cc459fa77d67 (patch) | |
| tree | 199214afc477824bf431d11d08834ff7555c994b /include/linux | |
| parent | d95a93a9b71677a43f967a1b7986decab84b7765 (diff) | |
| parent | 107df03203bb66de56e2caec3bde6d22b55480c5 (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Just several instances of overlapping changes.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/bcma/bcma.h | 1 | ||||
| -rw-r--r-- | include/linux/filter.h | 6 | ||||
| -rw-r--r-- | include/linux/huge_mm.h | 4 | ||||
| -rw-r--r-- | include/linux/memcontrol.h | 25 | ||||
| -rw-r--r-- | include/linux/netdevice.h | 7 | ||||
| -rw-r--r-- | include/linux/posix_acl.h | 6 | ||||
| -rw-r--r-- | include/linux/radix-tree.h | 1 | ||||
| -rw-r--r-- | include/linux/rmap.h | 2 |
8 files changed, 29 insertions, 23 deletions
diff --git a/include/linux/bcma/bcma.h b/include/linux/bcma/bcma.h index e6b41f42602b..3db25df396cb 100644 --- a/include/linux/bcma/bcma.h +++ b/include/linux/bcma/bcma.h | |||
| @@ -159,6 +159,7 @@ struct bcma_host_ops { | |||
| 159 | #define BCMA_CORE_DEFAULT 0xFFF | 159 | #define BCMA_CORE_DEFAULT 0xFFF |
| 160 | 160 | ||
| 161 | #define BCMA_MAX_NR_CORES 16 | 161 | #define BCMA_MAX_NR_CORES 16 |
| 162 | #define BCMA_CORE_SIZE 0x1000 | ||
| 162 | 163 | ||
| 163 | /* Chip IDs of PCIe devices */ | 164 | /* Chip IDs of PCIe devices */ |
| 164 | #define BCMA_CHIP_ID_BCM4313 0x4313 | 165 | #define BCMA_CHIP_ID_BCM4313 0x4313 |
diff --git a/include/linux/filter.h b/include/linux/filter.h index 15d816a8b755..a16439b99fd9 100644 --- a/include/linux/filter.h +++ b/include/linux/filter.h | |||
| @@ -484,7 +484,11 @@ static inline void bpf_prog_unlock_ro(struct bpf_prog *fp) | |||
| 484 | } | 484 | } |
| 485 | #endif /* CONFIG_DEBUG_SET_MODULE_RONX */ | 485 | #endif /* CONFIG_DEBUG_SET_MODULE_RONX */ |
| 486 | 486 | ||
| 487 | int sk_filter(struct sock *sk, struct sk_buff *skb); | 487 | int sk_filter_trim_cap(struct sock *sk, struct sk_buff *skb, unsigned int cap); |
| 488 | static inline int sk_filter(struct sock *sk, struct sk_buff *skb) | ||
| 489 | { | ||
| 490 | return sk_filter_trim_cap(sk, skb, 1); | ||
| 491 | } | ||
| 488 | 492 | ||
| 489 | struct bpf_prog *bpf_prog_select_runtime(struct bpf_prog *fp, int *err); | 493 | struct bpf_prog *bpf_prog_select_runtime(struct bpf_prog *fp, int *err); |
| 490 | void bpf_prog_free(struct bpf_prog *fp); | 494 | void bpf_prog_free(struct bpf_prog *fp); |
diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h index 419fb9e03447..f0a7a0320300 100644 --- a/include/linux/huge_mm.h +++ b/include/linux/huge_mm.h | |||
| @@ -94,7 +94,7 @@ static inline int split_huge_page(struct page *page) | |||
| 94 | void deferred_split_huge_page(struct page *page); | 94 | void deferred_split_huge_page(struct page *page); |
| 95 | 95 | ||
| 96 | void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd, | 96 | void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd, |
| 97 | unsigned long address, bool freeze); | 97 | unsigned long address, bool freeze, struct page *page); |
| 98 | 98 | ||
| 99 | #define split_huge_pmd(__vma, __pmd, __address) \ | 99 | #define split_huge_pmd(__vma, __pmd, __address) \ |
| 100 | do { \ | 100 | do { \ |
| @@ -102,7 +102,7 @@ void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd, | |||
| 102 | if (pmd_trans_huge(*____pmd) \ | 102 | if (pmd_trans_huge(*____pmd) \ |
| 103 | || pmd_devmap(*____pmd)) \ | 103 | || pmd_devmap(*____pmd)) \ |
| 104 | __split_huge_pmd(__vma, __pmd, __address, \ | 104 | __split_huge_pmd(__vma, __pmd, __address, \ |
| 105 | false); \ | 105 | false, NULL); \ |
| 106 | } while (0) | 106 | } while (0) |
| 107 | 107 | ||
| 108 | 108 | ||
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h index a805474df4ab..56e6069d2452 100644 --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h | |||
| @@ -97,6 +97,11 @@ enum mem_cgroup_events_target { | |||
| 97 | #define MEM_CGROUP_ID_SHIFT 16 | 97 | #define MEM_CGROUP_ID_SHIFT 16 |
| 98 | #define MEM_CGROUP_ID_MAX USHRT_MAX | 98 | #define MEM_CGROUP_ID_MAX USHRT_MAX |
| 99 | 99 | ||
| 100 | struct mem_cgroup_id { | ||
| 101 | int id; | ||
| 102 | atomic_t ref; | ||
| 103 | }; | ||
| 104 | |||
| 100 | struct mem_cgroup_stat_cpu { | 105 | struct mem_cgroup_stat_cpu { |
| 101 | long count[MEMCG_NR_STAT]; | 106 | long count[MEMCG_NR_STAT]; |
| 102 | unsigned long events[MEMCG_NR_EVENTS]; | 107 | unsigned long events[MEMCG_NR_EVENTS]; |
| @@ -172,6 +177,9 @@ enum memcg_kmem_state { | |||
| 172 | struct mem_cgroup { | 177 | struct mem_cgroup { |
| 173 | struct cgroup_subsys_state css; | 178 | struct cgroup_subsys_state css; |
| 174 | 179 | ||
| 180 | /* Private memcg ID. Used to ID objects that outlive the cgroup */ | ||
| 181 | struct mem_cgroup_id id; | ||
| 182 | |||
| 175 | /* Accounted resources */ | 183 | /* Accounted resources */ |
| 176 | struct page_counter memory; | 184 | struct page_counter memory; |
| 177 | struct page_counter swap; | 185 | struct page_counter swap; |
| @@ -330,22 +338,9 @@ static inline unsigned short mem_cgroup_id(struct mem_cgroup *memcg) | |||
| 330 | if (mem_cgroup_disabled()) | 338 | if (mem_cgroup_disabled()) |
| 331 | return 0; | 339 | return 0; |
| 332 | 340 | ||
| 333 | return memcg->css.id; | 341 | return memcg->id.id; |
| 334 | } | ||
| 335 | |||
| 336 | /** | ||
| 337 | * mem_cgroup_from_id - look up a memcg from an id | ||
| 338 | * @id: the id to look up | ||
| 339 | * | ||
| 340 | * Caller must hold rcu_read_lock() and use css_tryget() as necessary. | ||
| 341 | */ | ||
| 342 | static inline struct mem_cgroup *mem_cgroup_from_id(unsigned short id) | ||
| 343 | { | ||
| 344 | struct cgroup_subsys_state *css; | ||
| 345 | |||
| 346 | css = css_from_id(id, &memory_cgrp_subsys); | ||
| 347 | return mem_cgroup_from_css(css); | ||
| 348 | } | 342 | } |
| 343 | struct mem_cgroup *mem_cgroup_from_id(unsigned short id); | ||
| 349 | 344 | ||
| 350 | /** | 345 | /** |
| 351 | * parent_mem_cgroup - find the accounting parent of a memcg | 346 | * parent_mem_cgroup - find the accounting parent of a memcg |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index fab9a1c2a2ac..43c749b1b619 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
| @@ -4209,6 +4209,13 @@ static inline void netif_keep_dst(struct net_device *dev) | |||
| 4209 | dev->priv_flags &= ~(IFF_XMIT_DST_RELEASE | IFF_XMIT_DST_RELEASE_PERM); | 4209 | dev->priv_flags &= ~(IFF_XMIT_DST_RELEASE | IFF_XMIT_DST_RELEASE_PERM); |
| 4210 | } | 4210 | } |
| 4211 | 4211 | ||
| 4212 | /* return true if dev can't cope with mtu frames that need vlan tag insertion */ | ||
| 4213 | static inline bool netif_reduces_vlan_mtu(struct net_device *dev) | ||
| 4214 | { | ||
| 4215 | /* TODO: reserve and use an additional IFF bit, if we get more users */ | ||
| 4216 | return dev->priv_flags & IFF_MACSEC; | ||
| 4217 | } | ||
| 4218 | |||
| 4212 | extern struct pernet_operations __net_initdata loopback_net_ops; | 4219 | extern struct pernet_operations __net_initdata loopback_net_ops; |
| 4213 | 4220 | ||
| 4214 | /* Logging, debugging and troubleshooting/diagnostic helpers. */ | 4221 | /* Logging, debugging and troubleshooting/diagnostic helpers. */ |
diff --git a/include/linux/posix_acl.h b/include/linux/posix_acl.h index 5b5a80cc5926..c818772d9f9d 100644 --- a/include/linux/posix_acl.h +++ b/include/linux/posix_acl.h | |||
| @@ -43,10 +43,8 @@ struct posix_acl_entry { | |||
| 43 | }; | 43 | }; |
| 44 | 44 | ||
| 45 | struct posix_acl { | 45 | struct posix_acl { |
| 46 | union { | 46 | atomic_t a_refcount; |
| 47 | atomic_t a_refcount; | 47 | struct rcu_head a_rcu; |
| 48 | struct rcu_head a_rcu; | ||
| 49 | }; | ||
| 50 | unsigned int a_count; | 48 | unsigned int a_count; |
| 51 | struct posix_acl_entry a_entries[0]; | 49 | struct posix_acl_entry a_entries[0]; |
| 52 | }; | 50 | }; |
diff --git a/include/linux/radix-tree.h b/include/linux/radix-tree.h index cb4b7e8cee81..eca6f626c16e 100644 --- a/include/linux/radix-tree.h +++ b/include/linux/radix-tree.h | |||
| @@ -407,6 +407,7 @@ static inline __must_check | |||
| 407 | void **radix_tree_iter_retry(struct radix_tree_iter *iter) | 407 | void **radix_tree_iter_retry(struct radix_tree_iter *iter) |
| 408 | { | 408 | { |
| 409 | iter->next_index = iter->index; | 409 | iter->next_index = iter->index; |
| 410 | iter->tags = 0; | ||
| 410 | return NULL; | 411 | return NULL; |
| 411 | } | 412 | } |
| 412 | 413 | ||
diff --git a/include/linux/rmap.h b/include/linux/rmap.h index 49eb4f8ebac9..2b0fad83683f 100644 --- a/include/linux/rmap.h +++ b/include/linux/rmap.h | |||
| @@ -158,7 +158,7 @@ struct anon_vma *page_get_anon_vma(struct page *page); | |||
| 158 | /* | 158 | /* |
| 159 | * rmap interfaces called when adding or removing pte of page | 159 | * rmap interfaces called when adding or removing pte of page |
| 160 | */ | 160 | */ |
| 161 | void page_move_anon_rmap(struct page *, struct vm_area_struct *, unsigned long); | 161 | void page_move_anon_rmap(struct page *, struct vm_area_struct *); |
| 162 | void page_add_anon_rmap(struct page *, struct vm_area_struct *, | 162 | void page_add_anon_rmap(struct page *, struct vm_area_struct *, |
| 163 | unsigned long, bool); | 163 | unsigned long, bool); |
| 164 | void do_page_add_anon_rmap(struct page *, struct vm_area_struct *, | 164 | void do_page_add_anon_rmap(struct page *, struct vm_area_struct *, |
