Messages in this thread | | | Date | Tue, 14 Oct 2014 13:29:55 -0700 | From | David Cohen <> | Subject | Re: [PATCH 2/2] mm: verify compound order when freeing a page |
| |
Hi Yu,
On Tue, Oct 14, 2014 at 01:16:40PM -0700, Yu Zhao wrote: > This allows us to easily catch the bug fixed in previous patch.
Is the word "previous" a good way to relate patches after merged? Maybe you could either detail the bug here or be more verbose about the patch you're referring.
> > Here we also verify whether a page is tail page or not -- tail > pages are supposed to be freed along with their head, not by > themselves. > > Signed-off-by: Yu Zhao <yuzhao@google.com> > --- > mm/page_alloc.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index 736d8e1..2bcc770 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -750,6 +750,9 @@ static bool free_pages_prepare(struct page *page, unsigned int order) > int i; > int bad = 0; > > + VM_BUG_ON(PageTail(page)); > + VM_BUG_ON(PageHead(page) && compound_order(page) != order);
It may be too severe. AFAIU we're not talking about a fatal error. How about VM_WARN_ON()?
Br, David Cohen
> + > trace_mm_page_free(page, order); > kmemcheck_free_shadow(page, order); > > -- > 2.1.0.rc2.206.gedb03e5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/
| |