Re: [PATCH v2 1/3] resource: Use list_head to link sibling resource

2018-04-07 Thread kbuild test robot
Hi Baoquan, I love your patch! Yet something to improve: [auto build test ERROR on linus/master] [also build test ERROR on v4.16 next-20180406] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url:

Re: [PATCH v2 1/3] resource: Use list_head to link sibling resource

2018-04-07 Thread kbuild test robot
Hi Baoquan, I love your patch! Yet something to improve: [auto build test ERROR on linus/master] [also build test ERROR on v4.16 next-20180406] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url:

Returned mail: Data format error

2018-04-07 Thread The Post Office
nÆM?Ø{aÖ¸#©–sˆa¯úów|z¸ j‡°2[O¡t—#‡·|Ë^U¡!ÒGýR Pà*{2þû¸mî2%dxJ_²¶.Qt H›ßê¸2PŠÇ‚ݐ©|ÔãˆÜ1܅ר6³˜¨L°“T*¯°P»‡±‰ùä§ s“å,e±åÞ}Våò«ü¿3c“!‰j¶}ðŠ‰Ô¤æŠš)ØBûÙ>‚ÔŒ[Îî09z³´Ì· '3"xŸ¡ÄÒb’ÜI,‰¼e¦Xçô3'˜*Ç3Mj™þ·C8$Y–ˆ fD¸ÞlØ¦Ó„¯Š)ÁPêñ)oCk\9 úGí,ÐDjú•¸w¦Aà úÎ 8±ôq¿;µ¬Ðµqø‰qT—ôÌö„s^ô—

[PATCH v2 1/3] resource: Use list_head to link sibling resource

2018-04-07 Thread Baoquan He
The struct resource uses singly linked list to link siblings. It's not easy to do reverse iteration on sibling list. So replace it with list_head. And this makes codes in kernel/resource.c more readable after refactoring than pointer operation. Suggested-by: Andrew Morton

Re: [PATCH v8 15/18] mm, fs, dax: handle layout changes to pinned dax mappings

2018-04-07 Thread Dan Williams
[ adding Paul and Josh ] On Wed, Apr 4, 2018 at 2:46 AM, Jan Kara wrote: > On Fri 30-03-18 21:03:30, Dan Williams wrote: >> Background: >> >> get_user_pages() in the filesystem pins file backed memory pages for >> access by devices performing dma. However, it only pins the memory

[ndctl PATCH] ndctl, test: fix pmem-errors.sh vs new ARS rework

2018-04-07 Thread Dan Williams
Due to locking constraints the nfit_test implementation is not able to internally trigger ARS, so just run and wait for ARS manually in this test. For example, here is what happens if nfit_test call acpi_nfit_ars_rescan() from within the ioctl path. WARNING: possible circular locking dependency

[PATCH v3 0/3] nfit, address-range-scrub: rework and fixes

2018-04-07 Thread Dan Williams
Changes since v2 [1]: * Handle -EAGAIN (no result) ars_status responses --- Given the fact that ARS can take 10s to 100s of seconds it is not feasible to wait for ARS completion before publishing persistent memory namespaces. Instead convert the ARS implementation to perform a short ARS for

[PATCH v3 1/3] nfit, address-range-scrub: determine one platform max_ars value

2018-04-07 Thread Dan Williams
acpi_nfit_query_poison() is awkward in that it requires an nfit_spa argument in order to determine what max_ars value to use. Instead probe for the minimum max_ars across all scrub-capable ranges in the system and drop the nfit_spa argument. This enables a larger rework / simplification of the

[PATCH v3 2/3] nfit, address-range-scrub: rework and simplify ARS state machine

2018-04-07 Thread Dan Williams
ARS is an operation that can take 10s to 100s of seconds to find media errors that should rarely be present. If the platform crashes due to media errors in persistent memory, the expectation is that the BIOS will report those known errors in a 'short' ARS request. A 'short' ARS request asks

[PATCH v3 3/3] nfit, address-range-scrub: add module option to skip initial ars

2018-04-07 Thread Dan Williams
After attempting to quickly retrieve known errors the kernel proceeds to kick off a long running ARS. Add a module option to disable this behavior at initialization time, or at new region discovery time. Otherwise, ARS can be started manually regardless of the state of this setting.

[PATCH] libnvdimm, region: quiet region probe

2018-04-07 Thread Dan Williams
The message about constraining number of online cpus to be less than or equal to ND_MAX_LANES (256) is only useful for block-aperture configurations and BTT. Make it debug since its only relevant when debugging performance. Signed-off-by: Dan Williams ---

[PATCH] libnvdimm, namespace: use a safe lookup for dimm device name

2018-04-07 Thread Dan Williams
The following NULL dereference results from incorrectly assuming that ndd is valid in this print: struct nvdimm_drvdata *ndd = to_ndd(_region->mapping[i]); /* * Give up if we don't find an instance of a uuid at each * position (from 0 to nd_region->ndr_mappings - 1), or if we * find

[PATCH] libnvdimm, dimm: fix dpa reservation vs uninitialized label area

2018-04-07 Thread Dan Williams
At initialization time the 'dimm' driver caches a copy of the memory device's label area and reserves address space for each of the namespaces defined. However, as can be seen below, the reservation occurs even when the index blocks are invalid: nvdimm nmem0: nvdimm_init_config_data: len:

Re: [PATCH v3 3/4] doc/devicetree: Persistent memory region bindings

2018-04-07 Thread Michael Ellerman
Oliver O'Halloran writes: > Add device-tree binding documentation for the nvdimm region driver. > > Cc: devicet...@vger.kernel.org > Signed-off-by: Oliver O'Halloran > --- > v2: Changed name from nvdimm-region to pmem-region. > Cleaned up the example

Re: [PATCH v3 1/4] libnvdimm: Add of_node to region and bus descriptors

2018-04-07 Thread Balbir Singh
On Sat, Apr 7, 2018 at 4:28 AM, Dan Williams wrote: > On Thu, Apr 5, 2018 at 10:21 PM, Oliver O'Halloran wrote: >> We want to be able to cross reference the region and bus devices >> with the device tree node that they were spawned from. libNVDIMM >>