mirror of
https://github.com/LiBwrt-op/openwrt-6.x.git
synced 2026-01-08 20:24:51 +00:00
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> |
||
|---|---|---|
| .. | ||
| ase | ||
| base-files | ||
| dts | ||
| falcon | ||
| files/firmware/lantiq | ||
| image | ||
| patches-4.4 | ||
| patches-4.9 | ||
| xrx200 | ||
| xway | ||
| xway_legacy | ||
| config-4.4 | ||
| config-4.9 | ||
| Makefile | ||
| modules.mk | ||