Messages in this thread | | | Date | Mon, 02 Jul 2012 02:40:53 -0400 | From | Rik van Riel <> | Subject | Re: [PATCH 39/40] autonuma: bugcheck page_autonuma fields on newly allocated pages |
| |
On 06/28/2012 08:56 AM, Andrea Arcangeli wrote: > Debug tweak.
> +static inline void autonuma_check_new_page(struct page *page) > +{ > + struct page_autonuma *page_autonuma; > + if (!autonuma_impossible()) { > + page_autonuma = lookup_page_autonuma(page); > + BUG_ON(page_autonuma->autonuma_migrate_nid != -1); > + BUG_ON(page_autonuma->autonuma_last_nid != -1);
At this point, BUG_ON is not likely to give us a useful backtrace at all.
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index 2d53a1f..5943ed2 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -833,6 +833,7 @@ static inline int check_new_page(struct page *page) > bad_page(page); > return 1; > } > + autonuma_check_new_page(page); > return 0; > }
Why don't you hook into the return codes that check_new_page uses?
They appear to be there for a reason.
-- All rights reversed
| |