Re: [PATCH 1/4] Blackfin: arch patch for 2.6.18
From: Robin Getz
Date: Wed Sep 27 2006 - 13:20:05 EST
Arnd wrote:
The irq_flags are not declared anywhere in the code you just posted,
Yeah - they are already defined, and used in other macros in system.h -
which is why I put the macro there.
It would also be better to convert macros like this one to inline
functions in general. The rule is: if you can use either a macro or an
inline function with the same effect, use an inline function.
OK - I was just doing the similar thing to what already exists in
./asm-blackfin/system.h
#define local_irq_enable() do { \
__asm__ __volatile__ ( \
"sti %0;" \
::"d"(irq_flags)); \
} while (0)
which could be simplified to:
#define local_irq_enable() __asm__ __volatile__ ("sti %0;" ::"d"(irq_flags));
which is the same as what is in ./asm-i386/system.h - isn't it?
#define local_irq_disable() __asm__ __volatile__("cli": : :"memory")
#define local_irq_enable() __asm__ __volatile__("sti": : :"memory")
We can do it anyway that makes sense/improves readability - it all compiles
to the same thing...
-Robin
-
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/