Messages in this thread | | | Date | Tue, 21 Jul 2009 09:16:54 +0200 | From | Nick Piggin <> | Subject | Re: [PATCH 05/10] ksm: no debug in page_dup_rmap() |
| |
On Mon, Jul 20, 2009 at 02:11:14PM -0400, Rik van Riel wrote: > Izik Eidus wrote: > >From: Hugh Dickins <hugh.dickins@tiscali.co.uk> > > > >page_dup_rmap(), used on each mapped page when forking, was originally > >just an inline atomic_inc of mapcount. 2.6.22 added CONFIG_DEBUG_VM > >out-of-line checks to it, which would need to be ever-so-slightly > >complicated to allow for the PageKsm() we're about to define. > > > >But I think these checks never caught anything. And if it's coding > >errors we're worried about, such checks should be in page_remove_rmap() > >too, not just when forking; whereas if it's pagetable corruption we're > >worried about, then they shouldn't be limited to CONFIG_DEBUG_VM. > > Acked-by: Rik van Riel <riel@redhat.com>
I like debug code like this as it helps comment the code a litte bit too. We've got lots of debug checks in the VM and probably very few of them catch anything useful... I'd kind of like to see it be ever-so-slightly complicated with PageKsm, and even a call to page_check_anon_rmap put into page_remove_rmap (which is a good idea).
pagetable corruption/struct page corruption I think is good to check for, but it is fine to have such checks under DEBUG_VM -- we have a couple of orders of magnitude more memory that is not for struct page, so decent coverage of memory corruption kind of wants slab and page debugging too, don't you think?
/checks the sky for pigs...
| |