summaryrefslogtreecommitdiffstats
path: root/kernel/dma.c
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2010-07-22 11:56:38 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2010-07-27 11:04:11 +0200
commit424d66cedae8bebb00fdb917fc8430f7b8a655cf (patch)
treecd232df29974be404978d47a2257c9422272d304 /kernel/dma.c
parentfirewire: nosy: handle errors in device probe (diff)
downloadlinux-424d66cedae8bebb00fdb917fc8430f7b8a655cf.tar.xz
linux-424d66cedae8bebb00fdb917fc8430f7b8a655cf.zip
firewire: nosy: fix device shutdown with active client
Fix race between nosy_open() and remove_card() by replacing the unprotected array of card pointers by a mutex-protected list of cards. Make card instances reference-counted and let each client hold a reference. Notify clients about card removal via POLLHUP in poll()'s events bitmap; also let read() fail with errno=ENODEV if the card was removed and everything in the buffer was read. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'kernel/dma.c')
0 files changed, 0 insertions, 0 deletions