History

Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf

Daniel Borkmann says: ==================== pull-request: bpf 2019-12-19 The following pull-request contains BPF updates for your *net* tree. We've added 10 non-merge commits during the last 8 day(s) which contain a total of 21 files changed, 269 insertions(+), 108 deletions(-). The main changes are: 1) Fix lack of synchronization between xsk wakeup and destroying resources used by xsk wakeup, from Maxim Mikityanskiy. 2) Fix pruning with tail call patching, untrack programs in case of verifier error and fix a cgroup local storage tracking bug, from Daniel Borkmann. 3) Fix clearing skb->tstamp in bpf_redirect() when going from ingress to egress which otherwise cause issues e.g. on fq qdisc, from Lorenz Bauer. 4) Fix compile warning of unused proc_dointvec_minmax_bpf_restricted() when only cBPF is present, from Alexander Lobakin. ====================

David S. Miller committed 6 years ago

Commit 0fd26002 parents 6fa9a11 3123d8021 files · +269 −108Browse files

Showing the changes to include/linux (2 of 21 files). Show all

Unified · Split

2 files
  1. include/linux/bpf-cgroup.h +4 −4
  2. include/linux/bpf.h +2 −0
include/linux/bpf-cgroup.h+4−4
@@ -157,8 +157,8 @@ void bpf_cgroup_storage_link(struct bpf_cgroup_storage *storage, · 156 unmodified lines
157 struct cgroup *cgroup,157 struct cgroup *cgroup,
158 enum bpf_attach_type type);158 enum bpf_attach_type type);
159void bpf_cgroup_storage_unlink(struct bpf_cgroup_storage *storage);159void bpf_cgroup_storage_unlink(struct bpf_cgroup_storage *storage);
160int bpf_cgroup_storage_assign(struct bpf_prog *prog, struct bpf_map *map);160int bpf_cgroup_storage_assign(struct bpf_prog_aux *aux, struct bpf_map *map);
161void bpf_cgroup_storage_release(struct bpf_prog *prog, struct bpf_map *map);161void bpf_cgroup_storage_release(struct bpf_prog_aux *aux, struct bpf_map *map);
162 162
163int bpf_percpu_cgroup_storage_copy(struct bpf_map *map, void *key, void *value);163int bpf_percpu_cgroup_storage_copy(struct bpf_map *map, void *key, void *value);
164int bpf_percpu_cgroup_storage_update(struct bpf_map *map, void *key,164int bpf_percpu_cgroup_storage_update(struct bpf_map *map, void *key,
@@ -360,9 +360,9 @@ static inline int cgroup_bpf_prog_query(const union bpf_attr *attr, · 195 unmodified lines
360 360
361static inline void bpf_cgroup_storage_set(361static inline void bpf_cgroup_storage_set(
362 struct bpf_cgroup_storage *storage[MAX_BPF_CGROUP_STORAGE_TYPE]) {}362 struct bpf_cgroup_storage *storage[MAX_BPF_CGROUP_STORAGE_TYPE]) {}
363static inline int bpf_cgroup_storage_assign(struct bpf_prog *prog,363static inline int bpf_cgroup_storage_assign(struct bpf_prog_aux *aux,
364 struct bpf_map *map) { return 0; }364 struct bpf_map *map) { return 0; }
365static inline void bpf_cgroup_storage_release(struct bpf_prog *prog,365static inline void bpf_cgroup_storage_release(struct bpf_prog_aux *aux,
366 struct bpf_map *map) {}366 struct bpf_map *map) {}
367static inline struct bpf_cgroup_storage *bpf_cgroup_storage_alloc(367static inline struct bpf_cgroup_storage *bpf_cgroup_storage_alloc(
368 struct bpf_prog *prog, enum bpf_cgroup_storage_type stype) { return NULL; }368 struct bpf_prog *prog, enum bpf_cgroup_storage_type stype) { return NULL; }
include/linux/bpf.h+2−0
@@ -818,6 +818,8 @@ struct bpf_prog * __must_check bpf_prog_inc_not_zero(struct bpf_prog *prog); · 817 unmodified lines
818void bpf_prog_put(struct bpf_prog *prog);818void bpf_prog_put(struct bpf_prog *prog);
819int __bpf_prog_charge(struct user_struct *user, u32 pages);819int __bpf_prog_charge(struct user_struct *user, u32 pages);
820void __bpf_prog_uncharge(struct user_struct *user, u32 pages);820void __bpf_prog_uncharge(struct user_struct *user, u32 pages);
821void __bpf_free_used_maps(struct bpf_prog_aux *aux,
822 struct bpf_map **used_maps, u32 len);
821 823
822void bpf_prog_free_id(struct bpf_prog *prog, bool do_idr_lock);824void bpf_prog_free_id(struct bpf_prog *prog, bool do_idr_lock);
823void bpf_map_free_id(struct bpf_map *map, bool do_idr_lock);825void bpf_map_free_id(struct bpf_map *map, bool do_idr_lock);