[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] arm: alloc_heap_pages allocates already allocated page

On 07/02/2017 08:18, Vijay Kilari wrote:


   I am seeing below panic with NUMA during DT mappings in alloc_heap_pages()
BUG_ON(pg[i].count_info != PGC_state_free);
However, this issue is not there with 4.7 version. The same NUMA board
boots fine.

I am a bit confused by what you are saying. Xen on ARM does not yet support NUMA. I also know you are working on NUMA support. So does the BUG happen on upstream xen or upstream xen + your patches?

If the latter please provide more details on your modifications.

With 4.8 or staging I see below panic.

I would recommend you to try bisecting to see if you can pin point a specific commit.

I have add print in alloc_heap_pages to print page_to_mfn(pg) and
before and after calling
map_range_to_domain() DT mapping.
It shows that 0x83e22a is returned for multiple alloc_heap_page requests.

This is fine as long as there is a free_heap_pages between the 2 calls of alloc_heap_pages. I would recommend you to look if free_heap_pages has been called.


(XEN) Xen BUG at page_alloc.c:870

I was not able to spot a BUG at line 870 but 827. I think, the BUG_ON(PGC_state_free) is here to catch potential bug in the allocator, all the pages allocated should always be free.

Furthermore, we haven't made much changes in page_alloc.c recently. So this 43 lines differences made me wonder if you did other changes than adding debug?


Julien Grall

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.