You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
In the xrx200_close() function we call napi_disable(), that could sleep, with priv->hw->chan[i].lock held. This could lead to deadlock and causes the kernel to complain. Look at the code I couldn't convince myself about why we need to protect that specific code part with the lock. IMHO there seems no reason to protect the refcount variables, because AFAIK ndo_close() and ndo_open() callbacks are already called with a semaphore held. Neither I could figure out why napi_disable() have to be called with that lock held. The only remaining code part for which I could guess the lock is useful for is ltq_dma_close() function call. This patch reduces the lock to the said function call, avoiding the sleep-with-spinlock-held situation Signed-off-by: Andrea Merello <andrea.merello@gmail.com> [fold into 0025-NET-MIPS-lantiq-adds-xrx200-net.patch, backport to kernel 4.4] Signed-off-by: Mathias Kresin <dev@kresin.me> |
7 years ago | |
---|---|---|
.. | ||
ase | 7 years ago | |
base-files | 7 years ago | |
dts | 7 years ago | |
falcon | 8 years ago | |
files/firmware/lantiq | 11 years ago | |
image | 7 years ago | |
patches-4.4 | 7 years ago | |
patches-4.9 | 7 years ago | |
xrx200 | 7 years ago | |
xway | 8 years ago | |
xway_legacy | 8 years ago | |
Makefile | 7 years ago | |
config-4.4 | 7 years ago | |
config-4.9 | 7 years ago | |
modules.mk | 12 years ago |