This is a note to let you know that I've just added the patch titled sched: cls_bpf: fix panic on filter replace to the 4.1-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: sched-cls_bpf-fix-panic-on-filter-replace.patch and it can be found in the queue-4.1 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From foo@baz Sat Sep 26 11:13:07 PDT 2015 From: Daniel Borkmann <daniel@xxxxxxxxxxxxx> Date: Fri, 17 Jul 2015 22:38:43 +0200 Subject: sched: cls_bpf: fix panic on filter replace From: Daniel Borkmann <daniel@xxxxxxxxxxxxx> [ Upstream commit f6bfc46da6292b630ba389592123f0dd02066172 ] The following test case causes a NULL pointer dereference in cls_bpf: FOO="1,6 0 0 4294967295," tc filter add dev foo parent 1: bpf bytecode "$FOO" flowid 1:1 action ok tc filter replace dev foo parent 1: pref 49152 handle 0x1 \ bpf bytecode "$FOO" flowid 1:1 action drop The problem is that commit 1f947bf151e9 ("net: sched: rcu'ify cls_bpf") accidentally swapped the arguments of list_replace_rcu(), the old element needs to be the first argument and the new element the second. Fixes: 1f947bf151e9 ("net: sched: rcu'ify cls_bpf") Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx> Acked-by: John Fastabend <john.r.fastabend@xxxxxxxxx> Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- net/sched/cls_bpf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/net/sched/cls_bpf.c +++ b/net/sched/cls_bpf.c @@ -364,7 +364,7 @@ static int cls_bpf_change(struct net *ne goto errout; if (oldprog) { - list_replace_rcu(&prog->link, &oldprog->link); + list_replace_rcu(&oldprog->link, &prog->link); tcf_unbind_filter(tp, &oldprog->res); call_rcu(&oldprog->rcu, __cls_bpf_delete_prog); } else { Patches currently in stable-queue which might be from daniel@xxxxxxxxxxxxx are queue-4.1/sched-cls_bpf-fix-panic-on-filter-replace.patch queue-4.1/net-sched-fix-refcount-imbalance-in-actions.patch queue-4.1/sched-cls_flow-fix-panic-on-filter-replace.patch queue-4.1/act_bpf-fix-memory-leaks-when-replacing-bpf-programs.patch queue-4.1/packet-tpacket_snd-fix-signed-unsigned-comparison.patch queue-4.1/rtnetlink-verify-ifla_vf_info-attributes-before-passing-them-to-driver.patch queue-4.1/netlink-make-sure-ebusy-won-t-escape-from-netlink_insert.patch -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html