Re: [REGRESSION] 2.6.24-rc7: e1000: Detected Tx Unit Hang

From: David Miller
Date: Fri Jan 18 2008 - 08:37:36 EST


From: Robert Olsson <Robert.Olsson@xxxxxxxxxxx>
Date: Fri, 18 Jan 2008 14:00:57 +0100

> I don't understand the idea with semaphore for enabling/disabling
> irq's either the overall logic must safer/better without it.

They must have had code paths where they didn't know if IRQs were
enabled or not already, so they tried to create something which
approximates the:

local_irq_save(flags);
local_irq_restore(flags);

constructs we have for CPU interrupts, so they could go:

e1000_irq_disable();
/* ... */
e1000_irq_enable();

and this would work even if the caller was running
with e1000 interrupts disabled already.

Or, something like that... it is indeed confusing.

Anyways, yes it's totally bogus and should be removed.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/