Re: [PATCH V2 1/2] asm-offsets.c: adding #define to break circular dependency
From: Jim Quinlan <jim2101024@gmail.com>
Date: 2012-08-30 20:35:46
Are you saying you want me to outline most of the functions in
asm/bitops.h , or do you want me somehow outline just the "else"
clause that invokes raw_local_irq_{save_restore}?
Jim
On Thu, Aug 30, 2012 at 10:15 AM, Ralf Baechle [off-list ref] wrote:On Thu, Aug 30, 2012 at 10:06:30AM -0400, Jim Quinlan wrote:quoted
I'm not sure the tangle is so easily undone. The first dependency I see is asm-offsets.c asm/processors.h linux/cpumask.h linux/kernel.h linux/bitops.h asm/bitops.h linux/irqflags.h asm/irqflags.h When compared to other architectures, the MIPS asm/bitops.h seems to include more files at the top, including linux/irqflags.h. Any suggestions?This is because MIPS bitops for some ancient processors which don't have atomic operations and Cavium cnMIPS cores where disabling interrupts is faster than the atomic operations are implemented by disabling interrupts. This makes these atomic operations relativly bloated in terms of code size generated and may it'd be a good idea to outline the bits. With a bit of luck we even get better cache locality - and fewer header file inclusions. Ralf