Re: [PATCH 1/2] irq_flags_t: intro and core annotations

From: Jeff Garzik
Date: Tue Oct 23 2007 - 22:12:22 EST


Herbert Xu wrote:
Jeff Garzik <jeff@xxxxxxxxxx> wrote:
Let me add to the chorus of voices: I continually see two cases where real bugs crop up:

1) hacker uses spin_lock_irq() in incorrect context (where it is not safe to do a blind enable/disable)

2) hacker uses spin_lock_irq() correctly, but the surrounding code changes, thus invalidating prior assumptions.

I would even go so far as to support the drastic measure of deleting spin_lock_irq().

spin_lock_irqsave() generates fewer bugs, is more future-proof, and by virtue of 'flags' permits architectures a bit more flexibility.

Could we add a debug option that warned if spin_lock_irq is
executed with IRQs turned off already?

Seems reasonable but perhaps arch-specific?

Also, I think someone (akpm?) mentioned an effort had been made before, and run into some problems. I don't have details...

Jeff



-
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/