On Friday 09 November 2007, Sergei Shtylyov wrote: > Make sure to not clear the other IDE channel's interrupt when clearing an IDE > interrupt via the MRDMODE register. > > Thanks to Bart for finding a coding mistake. Could you resend with "Signed-off-by:" and "Tested-by:" tags? [ A reference to the problematic commit and crediting Martin for patiently bisecting the issue would score an extra points. :) ] > --- > The patch is against the Linus tree. > > drivers/ide/pci/cmd64x.c | 5 +++-- > 1 files changed, 3 insertions(+), 2 deletions(-) > > Index: linux-2.6/drivers/ide/pci/cmd64x.c > =================================================================== > --- linux-2.6.orig/drivers/ide/pci/cmd64x.c > +++ linux-2.6/drivers/ide/pci/cmd64x.c > @@ -1,5 +1,5 @@ > /* > - * linux/drivers/ide/pci/cmd64x.c Version 1.50 May 10, 2007 > + * linux/drivers/ide/pci/cmd64x.c Version 1.51 Nov 8, 2007 > * > * cmd64x.c: Enable interrupts at initialization time on Ultra/PCI machines. > * Due to massive hardware bugs, UltraDMA is only supported > @@ -339,7 +339,8 @@ static int cmd648_ide_dma_end (ide_drive > u8 mrdmode = inb(hwif->dma_master + 0x01); > > /* clear the interrupt bit */ > - outb(mrdmode | irq_mask, hwif->dma_master + 0x01); > + outb((mrdmode & ~(MRDMODE_INTR_CH0 | MRDMODE_INTR_CH1)) | irq_mask, > + hwif->dma_master + 0x01); > > return err; > } > > - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html