ide: clear drive IRQ after re-enabling local IRQs in ide_driveid_update()
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 24 Mar 2009 22:22:58 +0000 (23:22 +0100)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 24 Mar 2009 22:22:58 +0000 (23:22 +0100)
Clear drive IRQ after re-enabling local IRQs in ide_driveid_update()
to match try_to_identify().

Also remove superfluous local_irq_enable() call while at it.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-iops.c

index f92c63f564d2a902e9d80f258febed17ca4ef87a..affbc603987a79187910b33e41a7c0aed858c0fc 100644 (file)
@@ -341,10 +341,10 @@ int ide_driveid_update(ide_drive_t *drive)
 
        local_irq_save(flags);
        tp_ops->input_data(drive, NULL, id, SECTOR_SIZE);
-       (void)tp_ops->read_status(hwif);        /* clear drive IRQ */
-       local_irq_enable();
        local_irq_restore(flags);
 
+       (void)tp_ops->read_status(hwif); /* clear drive IRQ */
+
        ide_fix_driveid(id);
 
        SELECT_MASK(drive, 0);