Re: 2.6.23-rc1: BUG_ON in kmap_atomic_prot()
From: Adrian Bunk <hidden>
Date: 2007-07-24 19:41:37
Also in:
lkml
On Tue, Jul 24, 2007 at 12:15:48PM -0700, Linus Torvalds wrote:
On Tue, 24 Jul 2007, Andrew Morton wrote:quoted
fwiw, -fno-inline-functions-called-once (who knew?) takes i386 allnoconfig vmlinux .text from 928360 up to 955362 bytes (27k larger). A surprisingly large increase - I wonder if it did something dumb. It appears to still correctly inline those things which we've manually marked inline. hm.I think inlining small enough functions is worth it, and the thing is, the kernel is actually pretty damn good at having lots of small functions. It's one of the few things I really care about from a coding style standpoint. So I'm not surprised that "-fno-inline-functions-called-once" makes things larger, because I think it's generally a good idea to inline things that are just called once. But it does make things harder to debug, and the performance advantages become increasingly small for bigger functions. And that's a balancing act. Do we care about performance? Yes.
When using CONFIG_CC_OPTIMIZE_FOR_SIZE=y we even actively tell gcc that we only care about size and do not care about performance...
But do we care so much that it's worth inlining something like buffered_rmqueue()? ...
Where is the problem with having buffered_rmqueue() inlined?
Linus
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed