History

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

Daniel Borkmann says: ==================== pull-request: bpf 2020-12-28 The following pull-request contains BPF updates for your *net* tree. There is a small merge conflict between bpf tree commit 69ca310f3416 ("bpf: Save correct stopping point in file seq iteration") and net tree commit 66ed594409a1 ("bpf/task_iter: In task_file_seq_get_next use task_lookup_next_fd_rcu"). The get_files_struct() does not exist anymore in net, so take the hunk in HEAD and add the `info->tid = curr_tid` to the error path: [...] curr_task = task_seq_get_next(ns, &curr_tid, true); if (!curr_task) { info->task = NULL; info->tid = curr_tid; return NULL; } /* set info->task and info->tid */ [...] We've added 10 non-merge commits during the last 9 day(s) which contain a total of 11 files changed, 75 insertions(+), 20 deletions(-). The main changes are: 1) Various AF_XDP fixes such as fill/completion ring leak on failed bind and fixing a race in skb mode's backpressure mechanism, from Magnus Karlsson. 2) Fix latency spikes on lockdep enabled kernels by adding a rescheduling point to BPF hashtab initialization, from Eric Dumazet. 3) Fix a splat in task iterator by saving the correct stopping point in the seq file iteration, from Jonathan Lemon. 4) Fix BPF maps selftest by adding retries in case hashtab returns EBUSY errors on update/deletes, from Andrii Nakryiko. 5) Fix BPF selftest error reporting to something more user friendly if the vmlinux BTF cannot be found, from Kamal Mostafa. ====================

David S. Miller committed 5 years ago

Commit 4bfc4712 parents 1fef735 a61daaf11 files · +81 −27Browse files

Showing the changes to kernel (3 of 11 files). Show all

Unified · Split

3 files
  1. kernel/bpf/hashtab.c +1 −0
  2. kernel/bpf/syscall.c +0 −1
  3. kernel/bpf/task_iter.c +9 −9
kernel/bpf/hashtab.c+1−0
@@ -152,6 +152,7 @@ static void htab_init_buckets(struct bpf_htab *htab) · 151 unmodified lines
152 lockdep_set_class(&htab->buckets[i].lock,152 lockdep_set_class(&htab->buckets[i].lock,
153 &htab->lockdep_key);153 &htab->lockdep_key);
154 }154 }
155 cond_resched();
155 }156 }
156}157}
157 158
kernel/bpf/syscall.c+0−1
@@ -17,7 +17,6 @@ · 16 unmodified lines
17#include <linux/fs.h>17#include <linux/fs.h>
18#include <linux/license.h>18#include <linux/license.h>
19#include <linux/filter.h>19#include <linux/filter.h>
20#include <linux/version.h>
21#include <linux/kernel.h>20#include <linux/kernel.h>
22#include <linux/idr.h>21#include <linux/idr.h>
23#include <linux/cred.h>22#include <linux/cred.h>
kernel/bpf/task_iter.c+9−9
@@ -37,7 +37,7 @@ retry: · 36 unmodified lines
37 if (!task) {37 if (!task) {
38 ++*tid;38 ++*tid;
39 goto retry;39 goto retry;
40 } else if (skip_if_dup_files && task->tgid != task->pid &&40 } else if (skip_if_dup_files && !thread_group_leader(task) &&
41 task->files == task->group_leader->files) {41 task->files == task->group_leader->files) {
42 put_task_struct(task);42 put_task_struct(task);
43 task = NULL;43 task = NULL;
@@ -151,14 +151,14 @@ again: · 107 unmodified lines
151 curr_task = info->task;151 curr_task = info->task;
152 curr_fd = info->fd;152 curr_fd = info->fd;
153 } else {153 } else {
154 curr_task = task_seq_get_next(ns, &curr_tid, true);154 curr_task = task_seq_get_next(ns, &curr_tid, true);
155 if (!curr_task) {155 if (!curr_task) {
156 info->task = NULL;156 info->task = NULL;
157 return NULL;157 info->tid = curr_tid;
158 }158 return NULL;
159 159 }
160 /* set info->task and info->tid */160
161 info->task = curr_task;161 /* set info->task and info->tid */
162 if (curr_tid == info->tid) {162 if (curr_tid == info->tid) {
163 curr_fd = info->fd;163 curr_fd = info->fd;
164 } else {164 } else {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t