aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/patches-5.10/0400-mtd-rawnand-xway-don-t-yield-while-holding-spinlock.patch
Commit message (Collapse)AuthorAgeFilesLines
* lantiq: nand: don't yield while holding spinlockThomas Nixon2023-04-021-0/+38
The nand driver normally while waiting for the device to become ready; this is normally fine, but xway_nand holds the ebu_lock spinlock, and this can cause lockups if other threads which use ebu_lock are interleaved. Fix this by waiting instead of polling. This mainly showed up as crashes in ath9k_pci_owl_loader (see https://github.com/openwrt/openwrt/issues/9829 ), but turning on spinlock debugging shows this happening in other places too. This doesn't seem to measurably impact boot time. Tested on bt_homehub-v5a with 5.10 and 5.15. Signed-off-by: Thomas Nixon <tom@tomn.co.uk> [Add commit description into patch] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit d3b47909b199b876f67a0387b5545cb73bd6b815)