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
Raw File
Kconfig
menuconfig MTD_HYPERBUS
	tristate "HyperBus support"
	depends on HAS_IOMEM
	select MTD_CFI
	select MTD_MAP_BANK_WIDTH_2
	select MTD_CFI_AMDSTD
	select MTD_COMPLEX_MAPPINGS
	help
	  This is the framework for the HyperBus which can be used by
	  the HyperBus Controller driver to communicate with
	  HyperFlash. See Cypress HyperBus specification for more
	  details

if MTD_HYPERBUS

config HBMC_AM654
	tristate "HyperBus controller driver for AM65x SoC"
	depends on ARM64 || COMPILE_TEST
	select MULTIPLEXER
	imply MUX_MMIO
	help
	 This is the driver for HyperBus controller on TI's AM65x and
	 other SoCs

endif # MTD_HYPERBUS
back to top