Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-06-01 Thread Andy Lutomirski
On Mon, Jun 1, 2015 at 1:58 AM, Ingo Molnar wrote: > > * Andy Lutomirski wrote: > >> You answered the wrong question. :) I understand the point of the >> non-temporal >> stores -- I don't understand the point of using non-temporal stores to *WB >> memory*. I think we should be okay with having

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-06-01 Thread Ingo Molnar
* Andy Lutomirski wrote: > You answered the wrong question. :) I understand the point of the > non-temporal > stores -- I don't understand the point of using non-temporal stores to *WB > memory*. I think we should be okay with having the kernel mapping use WT > instead. WB memory is

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-06-01 Thread Ingo Molnar
* Andy Lutomirski l...@amacapital.net wrote: You answered the wrong question. :) I understand the point of the non-temporal stores -- I don't understand the point of using non-temporal stores to *WB memory*. I think we should be okay with having the kernel mapping use WT instead. WB

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-06-01 Thread Andy Lutomirski
On Mon, Jun 1, 2015 at 1:58 AM, Ingo Molnar mi...@kernel.org wrote: * Andy Lutomirski l...@amacapital.net wrote: You answered the wrong question. :) I understand the point of the non-temporal stores -- I don't understand the point of using non-temporal stores to *WB memory*. I think we

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread H. Peter Anvin
Nontemporal stores to WB memory is fine in such a way that it doesn't pollute the cache. This can be done by denoting to WC or by forcing cache allocation out of only a subset of the cache. On May 29, 2015 2:46:19 PM PDT, Andy Lutomirski wrote: >On Fri, May 29, 2015 at 2:29 PM, Elliott,

RE: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Elliott, Robert (Server Storage)
; Matthew Wilcox > Subject: Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with > ioremap_wt() > > On Fri, May 29, 2015 at 2:29 PM, Elliott, Robert (Server Storage) > wrote: > >> -Original Message- > >> From: Andy Lutomirski [mailto:l...@amacapital

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Andy Lutomirski
On Fri, May 29, 2015 at 2:29 PM, Elliott, Robert (Server Storage) wrote: >> -Original Message- >> From: Andy Lutomirski [mailto:l...@amacapital.net] >> Sent: Friday, May 29, 2015 1:35 PM > ... >> Whoa, there! Why would we use non-temporal stores to WB memory to >> access persistent

RE: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Elliott, Robert (Server Storage)
> -Original Message- > From: Andy Lutomirski [mailto:l...@amacapital.net] > Sent: Friday, May 29, 2015 1:35 PM ... > Whoa, there! Why would we use non-temporal stores to WB memory to > access persistent memory? I can see two reasons not to: Data written to a block storage device (here,

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Toshi Kani
On Fri, 2015-05-29 at 12:34 -0700, Dan Williams wrote: > On Fri, May 29, 2015 at 11:32 AM, Toshi Kani wrote: > > On Fri, 2015-05-29 at 11:19 -0700, Dan Williams wrote: > >> On Fri, May 29, 2015 at 8:03 AM, Toshi Kani wrote: > >> > On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: > >> >> On

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 11:32 AM, Toshi Kani wrote: > On Fri, 2015-05-29 at 11:19 -0700, Dan Williams wrote: >> On Fri, May 29, 2015 at 8:03 AM, Toshi Kani wrote: >> > On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: >> >> On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote: >> >> > On

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 11:34 AM, Andy Lutomirski wrote: > On Fri, May 29, 2015 at 11:19 AM, Dan Williams > wrote: >> On Fri, May 29, 2015 at 8:03 AM, Toshi Kani wrote: >>> On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote:

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Toshi Kani
On Fri, 2015-05-29 at 11:19 -0700, Dan Williams wrote: > On Fri, May 29, 2015 at 8:03 AM, Toshi Kani wrote: > > On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: > >> On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote: > >> > On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: >

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Andy Lutomirski
On Fri, May 29, 2015 at 11:19 AM, Dan Williams wrote: > On Fri, May 29, 2015 at 8:03 AM, Toshi Kani wrote: >> On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: >>> On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote: >>> > On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: >>>

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 8:03 AM, Toshi Kani wrote: > On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: >> On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote: >> > On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: >> >> The pmem driver maps NVDIMM with ioremap_nocache() as we

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Toshi Kani
On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: > On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote: > > On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: > >> The pmem driver maps NVDIMM with ioremap_nocache() as we cannot > >> write back the contents of the CPU caches in

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov wrote: > On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: >> The pmem driver maps NVDIMM with ioremap_nocache() as we cannot >> write back the contents of the CPU caches in case of a crash. >> >> This patch changes to use ioremap_wt(),

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Borislav Petkov
On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: > The pmem driver maps NVDIMM with ioremap_nocache() as we cannot > write back the contents of the CPU caches in case of a crash. > > This patch changes to use ioremap_wt(), which provides uncached > writes but cached reads, for

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Borislav Petkov
On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: The pmem driver maps NVDIMM with ioremap_nocache() as we cannot write back the contents of the CPU caches in case of a crash. This patch changes to use ioremap_wt(), which provides uncached writes but cached reads, for improving

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Toshi Kani
On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov b...@alien8.de wrote: On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: The pmem driver maps NVDIMM with ioremap_nocache() as we cannot write back the contents of the CPU caches

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov b...@alien8.de wrote: On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: The pmem driver maps NVDIMM with ioremap_nocache() as we cannot write back the contents of the CPU caches in case of a crash. This patch changes to use

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 8:03 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov b...@alien8.de wrote: On Wed, May 27, 2015 at 09:19:04AM -0600, Toshi Kani wrote: The pmem driver maps NVDIMM with

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Andy Lutomirski
On Fri, May 29, 2015 at 11:19 AM, Dan Williams dan.j.willi...@intel.com wrote: On Fri, May 29, 2015 at 8:03 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov b...@alien8.de wrote: On Wed, May 27,

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Toshi Kani
On Fri, 2015-05-29 at 11:19 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 8:03 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 2:11 AM, Borislav Petkov b...@alien8.de wrote: On Wed, May 27, 2015 at 09:19:04AM

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread H. Peter Anvin
Nontemporal stores to WB memory is fine in such a way that it doesn't pollute the cache. This can be done by denoting to WC or by forcing cache allocation out of only a subset of the cache. On May 29, 2015 2:46:19 PM PDT, Andy Lutomirski l...@amacapital.net wrote: On Fri, May 29, 2015 at 2:29

RE: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Elliott, Robert (Server Storage)
12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt() On Fri, May 29, 2015 at 2:29 PM, Elliott, Robert (Server Storage) elli...@hp.com wrote: -Original Message- From: Andy Lutomirski [mailto:l...@amacapital.net] Sent: Friday, May 29, 2015 1:35 PM ... Whoa, there! Why would

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 11:34 AM, Andy Lutomirski l...@amacapital.net wrote: On Fri, May 29, 2015 at 11:19 AM, Dan Williams dan.j.willi...@intel.com wrote: On Fri, May 29, 2015 at 8:03 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Toshi Kani
On Fri, 2015-05-29 at 12:34 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 11:32 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 11:19 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 8:03 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 07:43 -0700, Dan

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Dan Williams
On Fri, May 29, 2015 at 11:32 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 11:19 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 8:03 AM, Toshi Kani toshi.k...@hp.com wrote: On Fri, 2015-05-29 at 07:43 -0700, Dan Williams wrote: On Fri, May 29, 2015 at 2:11 AM, Borislav

RE: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Elliott, Robert (Server Storage)
-Original Message- From: Andy Lutomirski [mailto:l...@amacapital.net] Sent: Friday, May 29, 2015 1:35 PM ... Whoa, there! Why would we use non-temporal stores to WB memory to access persistent memory? I can see two reasons not to: Data written to a block storage device (here, the

Re: [PATCH v10 12/12] drivers/block/pmem: Map NVDIMM with ioremap_wt()

2015-05-29 Thread Andy Lutomirski
On Fri, May 29, 2015 at 2:29 PM, Elliott, Robert (Server Storage) elli...@hp.com wrote: -Original Message- From: Andy Lutomirski [mailto:l...@amacapital.net] Sent: Friday, May 29, 2015 1:35 PM ... Whoa, there! Why would we use non-temporal stores to WB memory to access persistent