mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
To: "'Christoph Lameter'" <clameter@SGI.com>,
	"William Lee Irwin III" <wli@holomorphy.com>
Cc: <linux-kernel@vger.kernel.org>
Subject: RE: Hugepages demand paging V1 [4/4]: Numa patch
Date: Mon, 25 Oct 2004 14:05:56 -0700	[thread overview]
Message-ID: <200410252103.i9PL3Mq08901@unix-os.sc.intel.com> (raw)
In-Reply-To: <Pine.LNX.4.58.0410221235300.9549@schroedinger.engr.sgi.com>

Christoph Lameter wrote on Friday, October 22, 2004 12:37 PM
> > On Thu, Oct 21, 2004 at 09:58:54PM -0700, Christoph Lameter wrote:
> > > Changelog
> > > 	* NUMA enhancements (rough first implementation)
> > > 	* Do not begin search for huge page memory at the first node
> > > 	  but start at the current node and then search previous and
> > > 	  the following nodes for memory.
> > > Signed-off-by: Christoph Lameter <clameter@sgi.com>
> >
> > dequeue_huge_page() seems to want a nodemask, not a vma, though I
> > suppose it's not particularly pressing.
>
> How about this variation following __alloc_page:
>
> @@ -32,14 +32,17 @@
> +	struct zonelist *zonelist = NODE_DATA(nid)->node_zonelists;
> +	struct zone **zones = zonelist->zones;
> +	struct zone *z;
> +	int i;
> +
> +	for(i=0; (z = zones[i])!= NULL; i++) {
> +		nid = z->zone_pgdat->node_id;
> +		if (list_empty(&hugepage_freelists[node_id]))
> +			break;
>  	}

Must be typos in the if statement.  Two fatal errors here:  You don't
really mean to break out of the for loop if there are no hugetlb page
on that node, do you?  The variable name to index into the freelist is
wrong, should be nid, otherwise this code won't compile.  That line
should be this:

+		if (!list_empty(&hugepage_freelists[nid]))


Also this is generic code, we should consider scanning ZONE_HIGHMEM
zonelist. Otherwise, this will likely screw up x86 numa machine.

- Ken



  parent reply	other threads:[~2004-10-25 21:12 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <B05667366EE6204181EABE9C1B1C0EB501F2ADFB@scsmsx401.amr.corp.intel.com>
2004-10-22  4:55 ` Hugepages demand paging V1 [0/4]: Discussion and overview Christoph Lameter
2004-10-22  4:56   ` Hugepages demand paging V1 [1/4]: demand paging core Christoph Lameter
2004-10-22 10:47     ` William Lee Irwin III
2004-10-22 15:33       ` Christoph Lameter
2004-10-22  4:57   ` Hugepages demand paging V1 [2/4]: set_huge_pte() arch updates Christoph Lameter
2004-10-22 10:37     ` William Lee Irwin III
2004-10-22 15:32       ` Christoph Lameter
2004-10-22 15:42         ` William Lee Irwin III
2004-10-22 20:29           ` Christoph Lameter
2004-10-22 20:45             ` William Lee Irwin III
2004-10-22 20:49               ` Christoph Lameter
2004-10-22  4:58   ` Hugepages demand paging V1 [3/4]: Overcommit handling Christoph Lameter
2004-10-22 10:28     ` Andrew Morton
2004-10-22 15:08       ` Christoph Lameter
2004-10-22 15:32       ` Chen, Kenneth W
2004-10-22 10:49     ` William Lee Irwin III
2004-10-22 11:01     ` Christoph Hellwig
2004-10-22 11:12       ` William Lee Irwin III
2004-10-22 11:16         ` Christoph Hellwig
2004-10-22 11:21           ` William Lee Irwin III
2004-10-22 11:23             ` William Lee Irwin III
2004-10-22  4:58   ` Hugepages demand paging V1 [4/4]: Numa patch Christoph Lameter
2004-10-22  6:05     ` Chen, Kenneth W
2004-10-22 11:00     ` William Lee Irwin III
2004-10-22 19:37       ` Christoph Lameter
2004-10-22 19:40         ` William Lee Irwin III
2004-10-25 21:25           ` Chen, Kenneth W
2004-10-25 21:52             ` William Lee Irwin III
2004-10-25 21:55               ` William Lee Irwin III
2004-10-25 21:05         ` Chen, Kenneth W [this message]
     [not found] <B05667366EE6204181EABE9C1B1C0EB504BFA479@scsmsx401.amr.corp.intel.com>
2004-10-27 17:57 ` Christoph Lameter
2004-10-27 20:53   ` Chen, Kenneth W

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200410252103.i9PL3Mq08901@unix-os.sc.intel.com \
    --to=kenneth.w.chen@intel.com \
    --cc=clameter@SGI.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=wli@holomorphy.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome