[lkml]   [2008]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 3/5] SLUB: Replace __builtin_return_address(0) with _RET_IP_.
Christoph Lameter wrote:
> Eduard - Gabriel Munteanu wrote:
>> On Tue, Aug 19, 2008 at 01:14:01PM -0500, Christoph Lameter wrote:
>>> Eduard - Gabriel Munteanu wrote:
>>>> void *kmem_cache_alloc(struct kmem_cache *s, gfp_t gfpflags)
>>>> {
>>>> - return slab_alloc(s, gfpflags, -1, __builtin_return_address(0));
>>>> + return slab_alloc(s, gfpflags, -1, (void *) _RET_IP_);
>>>> }
>>> Could you get rid of the casts by changing the type of parameter of slab_alloc()?
>> I just looked at it and it isn't a trivial change. slab_alloc() calls
>> other functions which expect a void ptr. Even if slab_alloc() were to
>> take an unsigned long and then cast it to a void ptr, other functions do
>> call slab_alloc() with void ptr arguments (so the casts would move
>> there).
>> I'd rather have this merged as it is and change things later, so that
>> kmemtrace gets some testing from Pekka and others.
> Well maybe this patch will do it then:
> Subject: slub: Use _RET_IP and use "unsigned long" for kernel text addresses
> Use _RET_IP_ instead of buildint_return_address() and make slub use unsigned long
> instead of void * for addresses.
> Signed-off-by: Christoph Lameter <>

Heh, heh. I'm happy to take your patch or alternatively you can ACK mine
(which is slightly different):

 \ /
  Last update: 2008-08-19 21:05    [W:0.075 / U:12.052 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site