Revision 580e4273d7a883ececfefa692c1f96bdbacb99b5 authored by Cong Wang on 02 October 2020, 19:13:34 UTC, committed by David S. Miller on 04 October 2020, 21:53:06 UTC
Although we take RTNL on dump path, it is possible to
skip RTNL on insertion path. So the following race condition
is possible:

rtnl_lock()		// no rtnl lock
			mutex_lock(&idrinfo->lock);
			// insert ERR_PTR(-EBUSY)
			mutex_unlock(&idrinfo->lock);
tc_dump_action()
rtnl_unlock()

So we have to skip those temporary -EBUSY entries on dump path
too.

Reported-and-tested-by: syzbot+b47bc4f247856fb4d9e1@syzkaller.appspotmail.com
Fixes: 0fedc63fadf0 ("net_sched: commit action insertions together")
Cc: Vlad Buslov <vladbu@mellanox.com>
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 9a9e774
History
File Mode Size
Kconfig -rw-r--r-- 4.2 KB
Makefile -rw-r--r-- 952 bytes
badrange.c -rw-r--r-- 7.7 KB
blk.c -rw-r--r-- 8.3 KB
btt.c -rw-r--r-- 43.1 KB
btt.h -rw-r--r-- 7.3 KB
btt_devs.c -rw-r--r-- 8.9 KB
bus.c -rw-r--r-- 31.3 KB
claim.c -rw-r--r-- 7.6 KB
core.c -rw-r--r-- 13.8 KB
dax_devs.c -rw-r--r-- 2.8 KB
dimm.c -rw-r--r-- 3.1 KB
dimm_devs.c -rw-r--r-- 24.7 KB
e820.c -rw-r--r-- 1.8 KB
label.c -rw-r--r-- 35.2 KB
label.h -rw-r--r-- 4.1 KB
namespace_devs.c -rw-r--r-- 67.1 KB
nd-core.h -rw-r--r-- 7.7 KB
nd.h -rw-r--r-- 11.1 KB
nd_virtio.c -rw-r--r-- 3.6 KB
of_pmem.c -rw-r--r-- 2.6 KB
pfn.h -rw-r--r-- 1.5 KB
pfn_devs.c -rw-r--r-- 21.8 KB
pmem.c -rw-r--r-- 16.8 KB
pmem.h -rw-r--r-- 1.1 KB
region.c -rw-r--r-- 4.1 KB
region_devs.c -rw-r--r-- 33.1 KB
security.c -rw-r--r-- 13.9 KB
virtio_pmem.c -rw-r--r-- 3.0 KB
virtio_pmem.h -rw-r--r-- 1.3 KB

back to top