Messages in this thread | | | Date | Tue, 15 Nov 2011 15:44:29 +0400 | From | Pavel Emelyanov <> | Subject | Re: [PATCH 1/4] Routine for generating an safe ID for kernel pointer |
| |
>> +unsigned long gen_object_id(void *ptr) >> +{ >> + if (!ptr) >> + return 0; >> + >> + if (unlikely(!ptr_poison)) { >> + spin_lock(&ptr_poison_lock); >> + if (!ptr_poison) >> + get_random_bytes(&ptr_poison, sizeof(ptr_poison)); >> + spin_unlock(&ptr_poison_lock); >> + } >> + >> + return ((unsigned long)ptr) ^ ptr_poison; >> +} > > You could put this in mm/util.c. Wouldn't it make sense to separate > the initialization and use late_initcall() to call it?
OK, will put to util.c
About the initialization - I will put the sanity check about poison being not 0 on get_object_id() anyway, so what's the point in separate initialization?
> Pekka > . >
| |