Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1208658
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option |
| Date | 2015-08-17 17:50 +0200 |
| Message-ID | <pYuPD-3cv-9@gated-at.bofh.it> (permalink) |
| References | (2 earlier) <pXFDr-5g2-7@gated-at.bofh.it> <pXLzc-5pY-7@gated-at.bofh.it> <pXM2e-5Yk-23@gated-at.bofh.it> <pXMbW-6p2-51@gated-at.bofh.it> <pYucW-2sM-19@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Mon, Aug 17, 2015 at 8:01 AM, Christoph Hellwig <hch@lst.de> wrote: > On Sat, Aug 15, 2015 at 09:04:02AM -0700, Dan Williams wrote: >> What other layer? /sys/devices/platform/e820_pmem is that exact same >> device we had before this patch. We just have a proper driver for it >> now. > > We're adding another layer of indirection between the old e820 file > and the new module. Ok, yes, I was confused by "another layer of platform_devices". That said here are the non-unit-test related reasons for this change that I would include in a new changelog: --- We currently register a platform device for e820 type-12 memory and register a nvdimm bus beneath it. Registering the platform device triggers the device-core machinery to probe for a driver, but that search currently comes up empty. Building the nvdimm-bus registration into the e820_pmem platform device registration in this way forces libnvdimm to be built-in. Instead, convert the built-in portion of CONFIG_X86_PMEM_LEGACY to simply register a platform device and move the rest of the logic to the driver for e820_pmem, for the following reasons: 1/ Letting libnvdimm be a module allows building and testing libnvdimm.ko changes without rebooting 2/ All the normal policy around modules can be applied to e820_pmem (unbind to disable and/or blacklisting the module from loading by default) 3/ Moving the driver to a generic location and converting it to scan "iomem_resource" rather than "e820.map" means any other architecture can take advantage of this simple nvdimm resource discovery mechanism by registering a resource named "Persistent Memory (legacy)" -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[RFC PATCH 0/7] 'struct page' driver for persistent memory Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
[RFC PATCH 2/7] x86, mm: introduce struct vmem_altmap Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
[RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Christoph Hellwig <hch@lst.de> - 2015-08-15 11:10 +0200
Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Dan Williams <dan.j.williams@intel.com> - 2015-08-15 17:30 +0200
Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Christoph Hellwig <hch@lst.de> - 2015-08-15 18:00 +0200
Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Dan Williams <dan.j.williams@intel.com> - 2015-08-15 18:10 +0200
Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Christoph Hellwig <hch@lst.de> - 2015-08-17 17:10 +0200
Re: [RFC PATCH 5/7] libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option Dan Williams <dan.j.williams@intel.com> - 2015-08-17 17:50 +0200
[RFC PATCH 3/7] x86, mm: arch_add_dev_memory() Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
[RFC PATCH 7/7] libnvdimm, pmem: 'struct page' for pmem Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
[RFC PATCH 4/7] mm: register_dev_memmap() Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
Re: [RFC PATCH 4/7] mm: register_dev_memmap() Christoph Hellwig <hch@lst.de> - 2015-08-15 11:10 +0200
[RFC PATCH 6/7] libnvdimm, pfn: 'struct page' provider infrastructure Dan Williams <dan.j.williams@intel.com> - 2015-08-13 06:00 +0200
Re: [RFC PATCH 0/7] 'struct page' driver for persistent memory Christoph Hellwig <hch@lst.de> - 2015-08-15 11:10 +0200
csiph-web