diff -r aa33e3290f44 kernel/drv/oss_hdaudio/oss_hdaudio.c
--- a/kernel/drv/oss_hdaudio/oss_hdaudio.c	Tue Nov 20 11:10:35 2012 +0100
+++ b/kernel/drv/oss_hdaudio/oss_hdaudio.c	Tue Nov 20 11:13:14 2012 +0100
@@ -255,8 +255,7 @@
 
       if (status & (1 << 30))	/* Controller interrupt (RIRB) */
 	{
-	  if (rirb_intr (devc))
-	    serviced = 1;
+	  serviced = rirb_intr (devc);
 	}
     }
   return serviced;
