lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 03 Apr 2008 18:41:21 -0700
From:	Dave Hansen <dave@...ux.vnet.ibm.com>
To:	Jeremy Fitzhardinge <jeremy@...p.org>
Cc:	KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>,
	Yasunori Goto <y-goto@...fujitsu.com>,
	Ingo Molnar <mingo@...e.hu>,
	LKML <linux-kernel@...r.kernel.org>,
	Christoph Lameter <clameter@....com>
Subject: Re: [PATCH 1 of 6] hotplug-memory: refactor online_pages to
	separate zone growth from page onlining

On Thu, 2008-04-03 at 18:32 -0700, Jeremy Fitzhardinge wrote:
> Dave Hansen wrote:
> > On Thu, 2008-04-03 at 17:05 -0700, Jeremy Fitzhardinge wrote:
> >> +int prepare_online_pages(unsigned long pfn, unsigned long nr_pages)
> >> +{
> >> +       int ret = notify_going_online(pfn, nr_pages);
> >> +       if (ret)
> >> +               return ret;
> >> +
> >> +       grow_zone_span(pfn, pfn+nr_pages);
> >>         return 0;
> >> +}
> >>     
> >
> > OK, after seeing this used in the Xen driver, I'm even less a fan of the
> > name.  Mostly because it doesn't actually prepare *pages* to be onlined.
> > It prepares the zones/pgdats and notifies that pages might soon be
> > online.  Can you think of any better names?
> >
> > grow_and_notify...??
> 
> Does it even need to be a separately visible function?  Could it just be 
> part of add_memory()?  Is there any reason delay doing it until 
> online_pages()?

Yeah, the add_memory() itself is supposed to be easily able to be rolled
back.  Say the machine didn't actually need the memory, it could just
give the memory back.  No danger of fragmentation or anything.

But, at the same time, we don't want to have this memory sitting there
being unused, but still being accounted for in the VM as real memory.
It's not in use, and making it look in use (by growing the zone spans)
could upset the VM watermarks.

> > It's also a bit funky because you're calling the online notifiers, but
> > you're not actually onlining the pages, yet.  Does that have any
> > repercussions?
> 
> No.  It will always call the GOING_ONLINE notifier, but it will only 
> call the ONLINE notifier if it actually bulk-onlines all the pages.  In 
> my page-by-page case, it will never end up calling the ONLINE notifier.  
> I could call it repeatedly for each page, but I'm not sure how useful 
> that is (the lack of any users of the ONLINE notifier makes it hard to 
> judge).

Ahhh.  You're completely right.  I was confused by ONLINE and
GOING_ONLINE.  Thanks for the reminder!

-- Dave

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ