b01377a420
Always use cfmuxl_remove_uplayer when removing a up-layer. cfmuxl_ctrlcmd() can be called independently and in parallel with cfmuxl_remove_uplayer(). The race between them could cause list_del_rcu to be called on a node which has been already taken out from the list. That lead to a (rare) crash on accessing poisoned node->prev inside list_del_rcu. This fix ensures that deletion are done holding the same lock. Reported-by: Dmitry Tarnyagin <dmitry.tarnyagin@stericsson.com> Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
caif_dev.c | ||
caif_socket.c | ||
caif_usb.c | ||
cfcnfg.c | ||
cfctrl.c | ||
cfdbgl.c | ||
cfdgml.c | ||
cffrml.c | ||
cfmuxl.c | ||
cfpkt_skbuff.c | ||
cfrfml.c | ||
cfserl.c | ||
cfsrvl.c | ||
cfutill.c | ||
cfveil.c | ||
cfvidl.c | ||
chnl_net.c | ||
Kconfig | ||
Makefile |