lkml.org 
[lkml]   [2008]   [Feb]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] kmemcheck v3
Hi Christoph,

Christoph Lameter wrote:
> SLABs can be excepted from tracking?

Yes. __GFP_NOTRACK can be used to suppress tracking of objects (but we
still take the page fault for each access). That is required for things
like DMA filled pages that are never initialized by the CPU.
SLAB_NOTRACK is for not tracking a whole *cache* so that we _don't_ take
the page fault. This is needed for kmemcheck implementation (to avoid
recursive page faults for memory accessed by the page fault handler).

> So it breaks recursion. But this adds a new cache that is rarely
> used. There will be only about 50-100 kmem_cache objects in the system. I
> thought you could control the tracking on an per object level? Would not a
> kmalloc with __GFP_NOTRACK work?

No. We need to not track the whole page to avoid recursive faults. So
for kmemcheck we absolutely do need cache_cache but we can, of course,
hide that under a alloc_cache() function that only uses the extra cache
when CONFIG_KMEMCHECK is enabled?


\
 
 \ /
  Last update: 2008-02-08 07:35    [W:0.725 / U:0.576 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site