/* The SRAT table always lists ascending addresses, so can always assume that the first "start" address that you see is the real start of the node, and that the current "end" address is after the previous one.  */
static __init int node_read_chunk(int nid, struct node_memory_chunk_s *memory_chunk)
/* The SRAT table always lists ascending addresses, so can always assume that the first "start" address that you see is the real start of the node, and that the current "end" address is after the previous one.  */
static __init int node_read_chunk(int nid, struct node_memory_chunk_s *memory_chunk)
{
	if (memory_chunk->start_pfn >= max_pfn) {
		printk(KERN_INFO "Ignoring SRAT pfns: %08lx - %08lx\n",
			memory_chunk->start_pfn, memory_chunk->end_pfn);
		return -1;
	}
	if (memory_chunk->nid != nid)
		return -1;
	if (!node_has_online_mem(nid))
		node_start_pfn[nid] = memory_chunk->start_pfn;
	if (node_start_pfn[nid] > memory_chunk->start_pfn)
		node_start_pfn[nid] = memory_chunk->start_pfn;
	if (node_end_pfn[nid] < memory_chunk->end_pfn)
		node_end_pfn[nid] = memory_chunk->end_pfn;
	return 0;
}