[patch 10/59] Repair snd-usb-usx2y over OHCI
-stable review patch. If anyone has any objections, please let us know. -- From: Karsten Wiese <[EMAIL PROTECTED]> The previous patch "Repair snd-usb-usx2y for usb 2.6.18" assumed urb->start_frame roll over beyond MAX_INT for both UHCI & OHCI. This isn't true until now (kernel 2.6.20). Fix this by only looking at the common between OHCI & UHCI Frame number range. This is for mainline and stable kernels >= 2.6.18. Signed-off-by: Karsten Wiese <[EMAIL PROTECTED]> Signed-off-by: Chris Wright <[EMAIL PROTECTED]> --- sound/usb/usx2y/usbusx2yaudio.c |2 +- sound/usb/usx2y/usx2yhwdeppcm.c |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) --- linux-2.6.19.2.orig/sound/usb/usx2y/usbusx2yaudio.c +++ linux-2.6.19.2/sound/usb/usx2y/usbusx2yaudio.c @@ -322,7 +322,7 @@ static void i_usX2Y_urb_complete(struct usX2Y_error_urb_status(usX2Y, subs, urb); return; } - if (likely(urb->start_frame == usX2Y->wait_iso_frame)) + if (likely((urb->start_frame & 0x) == (usX2Y->wait_iso_frame & 0x))) subs->completed_urb = urb; else { usX2Y_error_sequence(usX2Y, subs, urb); --- linux-2.6.19.2.orig/sound/usb/usx2y/usx2yhwdeppcm.c +++ linux-2.6.19.2/sound/usb/usx2y/usx2yhwdeppcm.c @@ -243,7 +243,7 @@ static void i_usX2Y_usbpcm_urb_complete( usX2Y_error_urb_status(usX2Y, subs, urb); return; } - if (likely(urb->start_frame == usX2Y->wait_iso_frame)) + if (likely((urb->start_frame & 0x) == (usX2Y->wait_iso_frame & 0x))) subs->completed_urb = urb; else { usX2Y_error_sequence(usX2Y, subs, urb); -- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[patch 10/59] Repair snd-usb-usx2y over OHCI
-stable review patch. If anyone has any objections, please let us know. -- From: Karsten Wiese [EMAIL PROTECTED] The previous patch Repair snd-usb-usx2y for usb 2.6.18 assumed urb-start_frame roll over beyond MAX_INT for both UHCI OHCI. This isn't true until now (kernel 2.6.20). Fix this by only looking at the common between OHCI UHCI Frame number range. This is for mainline and stable kernels = 2.6.18. Signed-off-by: Karsten Wiese [EMAIL PROTECTED] Signed-off-by: Chris Wright [EMAIL PROTECTED] --- sound/usb/usx2y/usbusx2yaudio.c |2 +- sound/usb/usx2y/usx2yhwdeppcm.c |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) --- linux-2.6.19.2.orig/sound/usb/usx2y/usbusx2yaudio.c +++ linux-2.6.19.2/sound/usb/usx2y/usbusx2yaudio.c @@ -322,7 +322,7 @@ static void i_usX2Y_urb_complete(struct usX2Y_error_urb_status(usX2Y, subs, urb); return; } - if (likely(urb-start_frame == usX2Y-wait_iso_frame)) + if (likely((urb-start_frame 0x) == (usX2Y-wait_iso_frame 0x))) subs-completed_urb = urb; else { usX2Y_error_sequence(usX2Y, subs, urb); --- linux-2.6.19.2.orig/sound/usb/usx2y/usx2yhwdeppcm.c +++ linux-2.6.19.2/sound/usb/usx2y/usx2yhwdeppcm.c @@ -243,7 +243,7 @@ static void i_usX2Y_usbpcm_urb_complete( usX2Y_error_urb_status(usX2Y, subs, urb); return; } - if (likely(urb-start_frame == usX2Y-wait_iso_frame)) + if (likely((urb-start_frame 0x) == (usX2Y-wait_iso_frame 0x))) subs-completed_urb = urb; else { usX2Y_error_sequence(usX2Y, subs, urb); -- - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/