Skip to contentSkip to conversation

cs46xx deadlocks in non-blocking read

PATCH In review David Huggins-Daines 2 participants 2 messages Jan 1, 2001

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 cs46xx deadlocks in non-blocking read

Without this patch, the cs46xx driver in 2.4-prelease (well, in -test12, at least) will hang the machine as soon as someone tries to read from it in non-blocking mode.

The cs_read() function already removes the wait queue on exit, so it's basically a correctness fix.

I've already sent this to Nils/Thomas but since it hasn't materialized in prerelease or ac1, and since it's quite small and needed for a number of things to function correctly, I'm sending it again in the hopes that it will get applied before 2.4 final.

Cheers

drivers/sound/cs46xx.c renamed from drivers/sound/cs46xx.c~ +0 -1
@@ -1971,7 +1971,6 @@
 			start_adc(state);
 			if (file->f_flags & O_NONBLOCK) {
 				if (!ret) ret = -EAGAIN;
-				remove_wait_queue(&state->dmabuf.wait, &wait);
 				break;
  			}
 			schedule();
Signature · 5 lines
David Huggins-Daines		-		[email protected]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#1 lore raw
Quoted 4 lines

I've already sent this to Nils/Thomas but since it hasn't materialized in prerelease or ac1, and since it's quite small and needed for a number of things to function correctly, I'm sending it again in the hopes that it will get applied before 2.4 final.

Thanks

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/