weird code in drivers/block/ide.c

Manfred Spraul (manfreds@colorfullife.com)
Wed, 11 Aug 1999 14:35:34 +0200


ide_intr() first calls "__cli()", then spin_lock_irqsave().
The documentation claims that the function is only called with
interrupts disabled.
I think that at least the __cli() should be removed.
(line 1454 in 2.3.13)

2.3.13/drivers/block/ide.c
> *
> * entry point for all interrupts, caller does __cli() for us
> */
> void ide_intr (int irq, void *dev_id, struct pt_regs *regs)
> {
> unsigned long flags;
> ide_hwgroup_t *hwgroup = (ide_hwgroup_t *)dev_id;
> ide_hwif_t *hwif;
> ide_drive_t *drive;
> ide_handler_t *handler;
>
> __cli(); /* local CPU only */
> spin_lock_irqsave(&hwgroup->spinlock, flags);
> hwif = hwgroup->hwif;

--
	Manfred

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/