Hi,
On 15/09/2017 20:50, Konrad Rzeszutek Wilk wrote:
.snip..
(XEN) Loading dom0 DTB to 0x0000000017e00000-0x0000000017e08265
(XEN) init_domheap_pages: 0xb87b1->0xb87bc
(XEN) init_heap_pages: 0xb87b1 -> 0xb87bc
(XEN) init_domheap_pages: 0xb88f1->0xb98ae
(XEN) init_heap_pages: 0xb88f1 -> 0xb98ae <- so the memory is from here
(XEN) Scrubbing Free RAM on 1 nodes using 8 CPUs
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Scrubbing Free RAM on 1 nodes using 8 CPUs
I expanded this a bit to include:
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) NODE0 start=0x0 pages=579306, max_page=0xc0000
(XEN) NODE0: #0 #1 #2 #3 #4 #5 #6 #7 (total=8)
(XEN) NODE0 start=0x0, per_cpu=72413, rem=2, end=0x8d6ea
^^^^^^^^ that is the end of
memory, but
0xb98ae > 0x8d6ae.
end = min(node_start_pfn(i) + node_spanned_pages(i), max_page);
0 0x8D6EA 0xc0000
Oh:
/* XXX: implement NUMA support */
#define node_spanned_pages(nid) (total_pages)
If I understand correctly, this would be wrong here because the memory
could be in multiple banks.
So, I think, what we would want to return here is bank[n]->end -
bank[0]->start where n is the last bank.
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel