Date: Mon, 13 May 2013 13:52:35 -0400 From: John Baldwin <jhb@FreeBSD.org> To: Attilio Rao <attilio@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: Re: svn commit: r250546 - user/attilio/jeff-numa/sys/x86/acpica Message-ID: <51912863.6010601@FreeBSD.org> In-Reply-To: <201305120210.r4C2AFpt076600@svn.freebsd.org> References: <201305120210.r4C2AFpt076600@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 5/11/13 10:10 PM, Attilio Rao wrote: > Author: attilio > Date: Sun May 12 02:10:15 2013 > New Revision: 250546 > URL: http://svnweb.freebsd.org/changeset/base/250546 > > Log: > Add the code to setup the correct number of probed memory domains. > > Sponsored by: EMC / Isilon storage division > Obtained from: jeff > > Modified: > user/attilio/jeff-numa/sys/x86/acpica/srat.c > > Modified: user/attilio/jeff-numa/sys/x86/acpica/srat.c > ============================================================================== > --- user/attilio/jeff-numa/sys/x86/acpica/srat.c Sun May 12 01:58:04 2013 (r250545) > +++ user/attilio/jeff-numa/sys/x86/acpica/srat.c Sun May 12 02:10:15 2013 (r250546) > @@ -244,33 +244,34 @@ static int > renumber_domains(void) > { > int domains[VM_PHYSSEG_MAX]; > - int ndomain, i, j, slot; > + int i, j, slot; > > /* Enumerate all the domains. */ > - ndomain = 0; > + vm_ndomain = 0; > for (i = 0; i < num_mem; i++) { > /* See if this domain is already known. */ > - for (j = 0; j < ndomain; j++) { > + for (j = 0; j < vm_ndomain; j++) { > if (domains[j] >= mem_info[i].domain) > break; > } > - if (j < ndomain && domains[j] == mem_info[i].domain) > + if (j < vm_ndomain && domains[j] == mem_info[i].domain) > continue; > > /* Insert the new domain at slot 'j'. */ > slot = j; > - for (j = ndomain; j > slot; j--) > + for (j = vm_ndomain; j > slot; j--) > domains[j] = domains[j - 1]; > domains[slot] = mem_info[i].domain; > - ndomain++; > - if (ndomain > MAXMEMDOM) { > + vm_ndomain++; > + if (vm_ndomain > MAXMEMDOM) { > + vm_ndomain = 1; > printf("SRAT: Too many memory domains\n"); > return (EFBIG); > } > } > > /* Renumber each domain to its index in the sorted 'domains' list. */ > - for (i = 0; i < ndomain; i++) { > + for (i = 0; i < vm_ndomain; i++) { > /* > * If the domain is already the right value, no need > * to renumber. > Why not just set vm_ndomain = ndomain at the end? The current code aims to only set the global variables if it successfully parses the entire table. Setting vm_ndomain at the end would be consistent with this model (and a much smaller diff). -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51912863.6010601>