Messages in this thread | | | Date | Fri, 20 Aug 2004 00:16:29 -0700 | From | Andrew Morton <> | Subject | Re: 2.6.8.1-mm2 |
| |
Hans Reiser <reiser@namesys.com> wrote: > > John Cherry wrote: > > >The new "errors" are from reiser4 code and they all appear to be... > > > >fs/reiser4/reiser4.h:18:2: #error "Please turn 4k stack off" > > > > > > > zam, can you or Mr. Demidov work on using kmalloc to reduce stack usage? > > Andrew suggested that for statically sized objects kmalloc is quite fast > (one instruction I think he said), so my objection to kmallocing a lot > has faded.
err, not that quick - but it's pretty quick.
With a kmalloc with a constant size and, preferably, a constant gfp mask we'll jump directly into __cache_alloc() and in the common case we'll pluck an entry directly out of the cpu-local head array:
So the kmalloc fastpath is, effectively:
local_irq_save(save_flags); ac = ac_data(cachep); if (likely(ac->avail)) { ac->touched = 1; objp = ac_entry(ac)[--ac->avail]; } local_irq_restore(save_flags); return objp;
Not bad... - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |