From: Manfred Spraul <manfred@colorfullife.com>
To: Pekka J Enberg <penberg@cs.Helsinki.FI>
Cc: "Christoph Lameter" <clameter@sgi.com>,
"Linus Torvalds" <torvalds@osdl.org>,
"Daniel Hokka Zakrisson" <daniel@hozac.com>,
linux-kernel@vger.kernel.org,
"Björn Steinbrink" <B.Steinbrink@gmx.de>,
greg@kroah.com, matthew@wil.cx, akpm@osdl.org
Subject: Re: [PATCH] fs: fcntl_setlease defies lease_init assumptions
Date: Tue, 09 May 2006 20:25:49 +0200 [thread overview]
Message-ID: <4460DEAD.9040900@colorfullife.com> (raw)
In-Reply-To: <Pine.LNX.4.58.0605091316010.27821@sbz-30.cs.Helsinki.FI>
Pekka J Enberg wrote:
>I think you mean
>
>static inline struct kmem_cache *slab_get_cache(const void *obj)
>{
> struct kmem_cache **p = (void *)((unsigned long) obj & ~(PAGE_SIZE-1));
> return *p;
>}
>
>
>
Of course.
>On Tue, 9 May 2006, Manfred Spraul wrote:
>
>
>>The result would be a few small restrictions: all objects must start in the
>>first page of a slab (there are no exceptions on my 2.6.16 system), and
>>PAGE_SIZE'd caches are very expensive. Replacing the names_cache with
>>get_free_page is trivial. That leaves the pgd cache.
>>
>>
>
>Your plan makes sense for slabs that have slab management structures
>embedded within.
>
No - it would only make sense if it could be used for all slabs.
Otherwise: How should kfree figure out if it's called for a slab with
embedded pointers or not?
> We already have enough free space there for one pointer
>due to
>
> colour_off += cachep->slab_size;
>
>in the alloc_slabmgmt() function, I think. Are you planning to kill
>external slab management allocation completely by switching to
>get_free_pages() for those cases? I'd much rather make the switch to page
>allocator under the hood so kmalloc(PAGE_SIZE*n) would still work because
>it's much nicer API.
>
>
How many kmalloc(PAGE_SIZE*n) users are there?
--
Manfred
next prev parent reply other threads:[~2006-05-09 18:26 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-07 23:21 [PATCH] fs: fcntl_setlease defies lease_init assumptions Daniel Hokka Zakrisson
2006-05-08 3:33 ` Linus Torvalds
2006-05-08 3:34 ` Linus Torvalds
2006-05-08 8:02 ` Daniel Hokka Zakrisson
2006-05-08 7:57 ` Daniel Hokka Zakrisson
2006-05-08 8:31 ` Pekka Enberg
2006-05-08 8:34 ` Pekka Enberg
2006-05-08 15:12 ` Linus Torvalds
2006-05-08 16:06 ` Pekka Enberg
2006-05-08 16:28 ` Linus Torvalds
2006-05-08 19:36 ` Pekka Enberg
2006-05-09 3:38 ` Christoph Lameter
2006-05-09 3:49 ` Martin J. Bligh
2006-05-09 5:31 ` Christoph Lameter
2006-05-09 6:16 ` Martin J. Bligh
2006-05-09 6:22 ` Manfred Spraul
2006-05-09 6:35 ` Keith Owens
2006-05-09 6:37 ` Nick Piggin
2006-05-09 10:26 ` Pekka J Enberg
2006-05-09 18:25 ` Manfred Spraul [this message]
2006-05-09 18:56 ` Linus Torvalds
2006-05-09 19:05 ` Pekka Enberg
2006-05-09 19:15 ` Pekka Enberg
2006-05-09 14:40 ` Linus Torvalds
2006-05-09 23:59 ` Christoph Lameter
2006-05-08 16:36 ` Dave Jones
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4460DEAD.9040900@colorfullife.com \
--to=manfred@colorfullife.com \
--cc=B.Steinbrink@gmx.de \
--cc=akpm@osdl.org \
--cc=clameter@sgi.com \
--cc=daniel@hozac.com \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matthew@wil.cx \
--cc=penberg@cs.Helsinki.FI \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.