mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2026-08-02 10:26:22 +00:00
The code was wrong in several aspects. The locking order was inconsistent, the device aquire code did not reset a variable after a wakeup and the wakeup handling was not working for applications where multiple chips are sharing a single hardware controller. When a hardware controller is available the locking is now reduced to the hardware controller lock and the waitqueue is moved to the hardware controller structure in order to avoid a wake_up_all(). The problem was pointed out by Ben Dooks, who also found the missing variable reset as main cause for his deadlock problem. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
||
|---|---|---|
| .. | ||
| blktrans.h | ||
| cfi_endian.h | ||
| cfi.h | ||
| compatmac.h | ||
| concat.h | ||
| doc2000.h | ||
| flashchip.h | ||
| ftl.h | ||
| gen_probe.h | ||
| iflash.h | ||
| inftl.h | ||
| jedec.h | ||
| map.h | ||
| mtd.h | ||
| nand_ecc.h | ||
| nand.h | ||
| nftl.h | ||
| partitions.h | ||
| physmap.h | ||
| plat-ram.h | ||
| pmc551.h | ||
| xip.h | ||