All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jerome Glisse <jglisse@redhat.com>
To: Dave Hansen <dave.hansen@intel.com>
Cc: thomas.lendacky@amd.com, dave@sr71.net,
	linux-nvdimm@lists.01.org, tiwai@suse.de,
	Dave Hansen <dave.hansen@linux.intel.com>,
	ying.huang@intel.com, linux-kernel@vger.kernel.org,
	linux-mm@kvack.org, mhocko@suse.com, bp@suse.de,
	baiyaowei@cmss.chinamobile.com, zwisler@kernel.org,
	bhelgaas@google.com, fengguang.wu@intel.com,
	akpm@linux-foundation.org
Subject: Re: [PATCH 2/4] mm/memory-hotplug: allow memory resources to be children
Date: Fri, 18 Jan 2019 15:26:18 -0500	[thread overview]
Message-ID: <20190118202618.GB3060@redhat.com> (raw)
In-Reply-To: <c6df9b8d-571d-3b4f-c528-dc176f8577e2@intel.com>

On Fri, Jan 18, 2019 at 11:58:54AM -0800, Dave Hansen wrote:
> On 1/16/19 11:16 AM, Jerome Glisse wrote:
> >> We *could* also simply truncate the existing top-level
> >> "Persistent Memory" resource and take over the released address
> >> space.  But, this means that if we ever decide to hot-unplug the
> >> "RAM" and give it back, we need to recreate the original setup,
> >> which may mean going back to the BIOS tables.
> >>
> >> This should have no real effect on the existing collision
> >> detection because the areas that truly conflict should be marked
> >> IORESOURCE_BUSY.
> > 
> > Still i am worrying that this might allow device private to register
> > itself as a child of some un-busy resource as this patch obviously
> > change the behavior of register_memory_resource()
> > 
> > What about instead explicitly providing parent resource to add_memory()
> > and then to register_memory_resource() so if it is provided as an
> > argument (!NULL) then you can __request_region(arg_res, ...) otherwise
> > you keep existing code intact ?
> 
> We don't have the locking to do this, do we?  For instance, all the
> locking is done below register_memory_resource(), so any previous
> resource lookup is invalid by the time we get to register_memory_resource().

Yeah you are right, maybe just a bool then ? bool as_child

Cheers,
Jérôme
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

WARNING: multiple messages have this Message-ID (diff)
From: Jerome Glisse <jglisse@redhat.com>
To: Dave Hansen <dave.hansen@intel.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>,
	dave@sr71.net, dan.j.williams@intel.com, dave.jiang@intel.com,
	zwisler@kernel.org, vishal.l.verma@intel.com,
	thomas.lendacky@amd.com, akpm@linux-foundation.org,
	mhocko@suse.com, linux-nvdimm@lists.01.org,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	ying.huang@intel.com, fengguang.wu@intel.com, bp@suse.de,
	bhelgaas@google.com, baiyaowei@cmss.chinamobile.com,
	tiwai@suse.de
Subject: Re: [PATCH 2/4] mm/memory-hotplug: allow memory resources to be children
Date: Fri, 18 Jan 2019 15:26:18 -0500	[thread overview]
Message-ID: <20190118202618.GB3060@redhat.com> (raw)
In-Reply-To: <c6df9b8d-571d-3b4f-c528-dc176f8577e2@intel.com>

On Fri, Jan 18, 2019 at 11:58:54AM -0800, Dave Hansen wrote:
> On 1/16/19 11:16 AM, Jerome Glisse wrote:
> >> We *could* also simply truncate the existing top-level
> >> "Persistent Memory" resource and take over the released address
> >> space.  But, this means that if we ever decide to hot-unplug the
> >> "RAM" and give it back, we need to recreate the original setup,
> >> which may mean going back to the BIOS tables.
> >>
> >> This should have no real effect on the existing collision
> >> detection because the areas that truly conflict should be marked
> >> IORESOURCE_BUSY.
> > 
> > Still i am worrying that this might allow device private to register
> > itself as a child of some un-busy resource as this patch obviously
> > change the behavior of register_memory_resource()
> > 
> > What about instead explicitly providing parent resource to add_memory()
> > and then to register_memory_resource() so if it is provided as an
> > argument (!NULL) then you can __request_region(arg_res, ...) otherwise
> > you keep existing code intact ?
> 
> We don't have the locking to do this, do we?  For instance, all the
> locking is done below register_memory_resource(), so any previous
> resource lookup is invalid by the time we get to register_memory_resource().

Yeah you are right, maybe just a bool then ? bool as_child

Cheers,
Jérôme

  reply	other threads:[~2019-01-18 20:26 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-16 18:18 [PATCH 0/4] Allow persistent memory to be used like normal RAM Dave Hansen
2019-01-16 18:18 ` Dave Hansen
2019-01-16 18:18 ` Dave Hansen
2019-01-16 18:19 ` [PATCH 1/4] mm/resource: return real error codes from walk failures Dave Hansen
2019-01-16 18:19   ` Dave Hansen
2019-01-16 18:19   ` Dave Hansen
     [not found]   ` <20190116181901.CAF85066-LXbPSdftPKxrdx17CPfAsdBPR1lH4CV8@public.gmane.org>
2019-01-16 20:38     ` Bjorn Helgaas
2019-01-16 20:38       ` Bjorn Helgaas
2019-01-16 18:19 ` [PATCH 2/4] mm/memory-hotplug: allow memory resources to be children Dave Hansen
2019-01-16 18:19   ` Dave Hansen
2019-01-16 18:19   ` Dave Hansen
2019-01-16 19:16   ` Jerome Glisse
2019-01-16 19:16     ` Jerome Glisse
2019-01-16 23:01     ` Dave Hansen
2019-01-16 23:01       ` Dave Hansen
2019-01-16 23:38       ` Jerome Glisse
2019-01-16 23:38         ` Jerome Glisse
2019-01-23 20:03         ` Dave Hansen
2019-01-23 20:03           ` Dave Hansen
2019-01-23 20:15           ` Jerome Glisse
2019-01-23 20:15             ` Jerome Glisse
2019-01-18 19:58     ` Dave Hansen
2019-01-18 19:58       ` Dave Hansen
2019-01-18 20:26       ` Jerome Glisse [this message]
2019-01-18 20:26         ` Jerome Glisse
2019-01-23 17:05   ` Michal Hocko
2019-01-16 18:19 ` [PATCH 3/4] dax/kmem: let walk_system_ram_range() search child resources Dave Hansen
2019-01-16 18:19   ` Dave Hansen
2019-01-16 18:19   ` Dave Hansen
     [not found] ` <20190116181859.D1504459-LXbPSdftPKxrdx17CPfAsdBPR1lH4CV8@public.gmane.org>
2019-01-16 18:19   ` [PATCH 4/4] dax: "Hotplug" persistent memory for use like normal RAM Dave Hansen
2019-01-16 18:19     ` Dave Hansen
2019-01-16 18:19     ` Dave Hansen
2019-01-16 21:16     ` Bjorn Helgaas
2019-01-16 21:40       ` Dave Hansen
2019-01-16 21:40         ` Dave Hansen
     [not found]         ` <98ab9bc8-8a17-297c-da7c-2e6b5a03ef24-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2019-01-16 21:44           ` Bjorn Helgaas
2019-01-16 21:44             ` Bjorn Helgaas
2019-01-16 22:06         ` Dan Williams
2019-01-16 22:06           ` Dan Williams
2019-01-16 21:53       ` Dave Hansen
2019-01-16 21:53         ` Dave Hansen
2019-01-16 21:59         ` Bjorn Helgaas
2019-01-16 21:31     ` Dan Williams
2019-01-16 21:31       ` Dan Williams
2019-01-17  5:21     ` Du, Fan
2019-01-17  5:21       ` Du, Fan
2019-01-17 16:56       ` Dan Williams
2019-01-17 16:56         ` Dan Williams
2019-01-17  8:19     ` Yanmin Zhang
2019-01-17  8:19       ` Yanmin Zhang
2019-01-17 15:17       ` Dave Hansen
2019-01-18  7:47         ` Yanmin Zhang
2019-01-18  7:47           ` Yanmin Zhang
2019-01-18 15:20           ` Dave Hansen
2019-01-17 16:29 ` [PATCH 0/4] Allow persistent memory to be used " Jeff Moyer
2019-01-17 16:29   ` Jeff Moyer
2019-01-17 16:47   ` Keith Busch
2019-01-17 16:47     ` Keith Busch
2019-01-17 17:20     ` Jeff Moyer
2019-01-17 19:34       ` Keith Busch
2019-01-17 19:34         ` Keith Busch
2019-01-17 21:57         ` Jeff Moyer
2019-01-17 21:57           ` Jeff Moyer
2019-01-18 11:48       ` Fengguang Wu
2019-01-18 11:48         ` Fengguang Wu
2019-01-17 16:50   ` Dan Williams
2019-01-17 16:50     ` Dan Williams
2019-01-17 22:43   ` Dave Hansen
2019-01-17 22:43     ` Dave Hansen

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=20190118202618.GB3060@redhat.com \
    --to=jglisse@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=baiyaowei@cmss.chinamobile.com \
    --cc=bhelgaas@google.com \
    --cc=bp@suse.de \
    --cc=dave.hansen@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=dave@sr71.net \
    --cc=fengguang.wu@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=mhocko@suse.com \
    --cc=thomas.lendacky@amd.com \
    --cc=tiwai@suse.de \
    --cc=ying.huang@intel.com \
    --cc=zwisler@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.