All of lore.kernel.org
 help / color / mirror / Atom feed
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
	Peter Zijlstra <peterz@infradead.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	platform-driver-x86@vger.kernel.org, linux-mm@kvack.org,
	Will Deacon <will@kernel.org>, Christoph Hellwig <hch@lst.de>,
	linux-s390@vger.kernel.org, David Hildenbrand <david@redhat.com>,
	Ingo Molnar <mingo@redhat.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Borislav Petkov <bp@alien8.de>, Andy Lutomirski <luto@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Michal Hocko <mhocko@kernel.org>,
	linux-arm-kernel@lists.infradead.org,
	Eric Badger <ebadger@gigaio.com>,
	linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA
Date: Thu, 27 Feb 2020 17:54:40 +0000	[thread overview]
Message-ID: <7e573498-81c1-7f00-c1ff-ed16e12a5b96@deltatee.com> (raw)
In-Reply-To: <20200227174311.GL31668@ziepe.ca>



On 2020-02-27 10:43 a.m., Jason Gunthorpe wrote:
> Hm, AFAIK WC memory is not compatible with the spinlocks/mutexs/etc in
> Linux, so while it is true the memory has no side effects, there would
> be surprising concurrency risks if anything in the kernel tried to
> write to it.
> 
> Not compatible means the locks don't contain stores to WC memory the
> way you would expect. AFAIK on many CPUs extra barriers are required
> to keep WC stores ordered, the same way ARM already has extra barriers
> to keep UC stores ordered with locking..
> 
> The spinlocks are defined to contain UC stores though.
> 
> If there is no actual need today for WC I would suggest using UC as
> the default.

Ok, that sounds sensible. I'll do that in the next revision.

Thanks,

Logan

WARNING: multiple messages have this Message-ID (diff)
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org,
	linux-sh@vger.kernel.org, platform-driver-x86@vger.kernel.org,
	linux-mm@kvack.org, Dan Williams <dan.j.williams@intel.com>,
	Michal Hocko <mhocko@kernel.org>,
	David Hildenbrand <david@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Christoph Hellwig <hch@lst.de>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will@kernel.org>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Eric Badger <ebadger@gigaio.com>
Subject: Re: [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA
Date: Thu, 27 Feb 2020 10:54:40 -0700	[thread overview]
Message-ID: <7e573498-81c1-7f00-c1ff-ed16e12a5b96@deltatee.com> (raw)
In-Reply-To: <20200227174311.GL31668@ziepe.ca>



On 2020-02-27 10:43 a.m., Jason Gunthorpe wrote:
> Hm, AFAIK WC memory is not compatible with the spinlocks/mutexs/etc in
> Linux, so while it is true the memory has no side effects, there would
> be surprising concurrency risks if anything in the kernel tried to
> write to it.
> 
> Not compatible means the locks don't contain stores to WC memory the
> way you would expect. AFAIK on many CPUs extra barriers are required
> to keep WC stores ordered, the same way ARM already has extra barriers
> to keep UC stores ordered with locking..
> 
> The spinlocks are defined to contain UC stores though.
> 
> If there is no actual need today for WC I would suggest using UC as
> the default.

Ok, that sounds sensible. I'll do that in the next revision.

Thanks,

Logan

WARNING: multiple messages have this Message-ID (diff)
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
	Peter Zijlstra <peterz@infradead.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	platform-driver-x86@vger.kernel.org, linux-mm@kvack.org,
	Will Deacon <will@kernel.org>, Christoph Hellwig <hch@lst.de>,
	linux-s390@vger.kernel.org, David Hildenbrand <david@redhat.com>,
	Ingo Molnar <mingo@redhat.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Borislav Petkov <bp@alien8.de>, Andy Lutomirski <luto@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Michal Hocko <mhocko@kernel.org>,
	linux-arm-kernel@lists.infradead.org,
	Eric Badger <ebadger@gigaio.com>,
	linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA
Date: Thu, 27 Feb 2020 10:54:40 -0700	[thread overview]
Message-ID: <7e573498-81c1-7f00-c1ff-ed16e12a5b96@deltatee.com> (raw)
In-Reply-To: <20200227174311.GL31668@ziepe.ca>



On 2020-02-27 10:43 a.m., Jason Gunthorpe wrote:
> Hm, AFAIK WC memory is not compatible with the spinlocks/mutexs/etc in
> Linux, so while it is true the memory has no side effects, there would
> be surprising concurrency risks if anything in the kernel tried to
> write to it.
> 
> Not compatible means the locks don't contain stores to WC memory the
> way you would expect. AFAIK on many CPUs extra barriers are required
> to keep WC stores ordered, the same way ARM already has extra barriers
> to keep UC stores ordered with locking..
> 
> The spinlocks are defined to contain UC stores though.
> 
> If there is no actual need today for WC I would suggest using UC as
> the default.

Ok, that sounds sensible. I'll do that in the next revision.

Thanks,

Logan

WARNING: multiple messages have this Message-ID (diff)
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
	Peter Zijlstra <peterz@infradead.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	platform-driver-x86@vger.kernel.org, linux-mm@kvack.org,
	Will Deacon <will@kernel.org>, Christoph Hellwig <hch@lst.de>,
	linux-s390@vger.kernel.org, David Hildenbrand <david@redhat.com>,
	Ingo Molnar <mingo@redhat.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Borislav Petkov <bp@alien8.de>, Andy Lutomirski <luto@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Michal Hocko <mhocko@kernel.org>,
	linux-arm-kernel@lists.infradead.org,
	Eric Badger <ebadger@gigaio.com>,
	linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA
Date: Thu, 27 Feb 2020 10:54:40 -0700	[thread overview]
Message-ID: <7e573498-81c1-7f00-c1ff-ed16e12a5b96@deltatee.com> (raw)
In-Reply-To: <20200227174311.GL31668@ziepe.ca>



On 2020-02-27 10:43 a.m., Jason Gunthorpe wrote:
> Hm, AFAIK WC memory is not compatible with the spinlocks/mutexs/etc in
> Linux, so while it is true the memory has no side effects, there would
> be surprising concurrency risks if anything in the kernel tried to
> write to it.
> 
> Not compatible means the locks don't contain stores to WC memory the
> way you would expect. AFAIK on many CPUs extra barriers are required
> to keep WC stores ordered, the same way ARM already has extra barriers
> to keep UC stores ordered with locking..
> 
> The spinlocks are defined to contain UC stores though.
> 
> If there is no actual need today for WC I would suggest using UC as
> the default.

Ok, that sounds sensible. I'll do that in the next revision.

Thanks,

Logan

WARNING: multiple messages have this Message-ID (diff)
From: Logan Gunthorpe <logang@deltatee.com>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
	Peter Zijlstra <peterz@infradead.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	platform-driver-x86@vger.kernel.org, linux-mm@kvack.org,
	Will Deacon <will@kernel.org>, Christoph Hellwig <hch@lst.de>,
	linux-s390@vger.kernel.org, David Hildenbrand <david@redhat.com>,
	Ingo Molnar <mingo@redhat.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Dan Williams <dan.j.williams@intel.com>,
	Borislav Petkov <bp@alien8.de>, Andy Lutomirski <luto@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Michal Hocko <mhocko@kernel.org>,
	linux-arm-kernel@lists.infradead.org,
	Eric Badger <ebadger@gigaio.com>,
	linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA
Date: Thu, 27 Feb 2020 10:54:40 -0700	[thread overview]
Message-ID: <7e573498-81c1-7f00-c1ff-ed16e12a5b96@deltatee.com> (raw)
In-Reply-To: <20200227174311.GL31668@ziepe.ca>



On 2020-02-27 10:43 a.m., Jason Gunthorpe wrote:
> Hm, AFAIK WC memory is not compatible with the spinlocks/mutexs/etc in
> Linux, so while it is true the memory has no side effects, there would
> be surprising concurrency risks if anything in the kernel tried to
> write to it.
> 
> Not compatible means the locks don't contain stores to WC memory the
> way you would expect. AFAIK on many CPUs extra barriers are required
> to keep WC stores ordered, the same way ARM already has extra barriers
> to keep UC stores ordered with locking..
> 
> The spinlocks are defined to contain UC stores though.
> 
> If there is no actual need today for WC I would suggest using UC as
> the default.

Ok, that sounds sensible. I'll do that in the next revision.

Thanks,

Logan

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2020-02-27 17:54 UTC|newest]

Thread overview: 148+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-21 18:24 [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA Logan Gunthorpe
2020-02-21 18:24 ` Logan Gunthorpe
2020-02-21 18:24 ` Logan Gunthorpe
2020-02-21 18:24 ` Logan Gunthorpe
2020-02-21 18:24 ` [PATCH v3 1/7] mm/memory_hotplug: Drop the flags field from struct mhp_restrictions Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-28 21:31   ` Dan Williams
2020-02-28 21:31     ` Dan Williams
2020-02-28 21:31     ` Dan Williams
2020-02-28 21:31     ` Dan Williams
2020-02-28 21:31     ` Dan Williams
2020-02-28 21:31     ` Dan Williams
2020-03-03  9:50   ` Michal Hocko
2020-03-03  9:50     ` Michal Hocko
2020-03-03  9:50     ` Michal Hocko
2020-03-03  9:50     ` Michal Hocko
2020-02-21 18:24 ` [PATCH v3 2/7] mm/memory_hotplug: Rename mhp_restrictions to mhp_params Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-24  9:11   ` David Hildenbrand
2020-02-24  9:11     ` David Hildenbrand
2020-02-24  9:11     ` David Hildenbrand
2020-02-24  9:11     ` David Hildenbrand
2020-02-29 20:44   ` Dan Williams
2020-02-29 20:44     ` Dan Williams
2020-02-29 20:44     ` Dan Williams
2020-02-29 20:44     ` Dan Williams
2020-02-29 20:44     ` Dan Williams
2020-02-29 20:44     ` Dan Williams
2020-03-03  9:50   ` Michal Hocko
2020-03-03  9:50     ` Michal Hocko
2020-03-03  9:50     ` Michal Hocko
2020-03-03  9:50     ` Michal Hocko
2020-02-21 18:24 ` [PATCH v3 3/7] x86/mm: Thread pgprot_t through init_memory_mapping() Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-21 18:24   ` Logan Gunthorpe
2020-02-29 22:37   ` Dan Williams
2020-02-29 22:37     ` Dan Williams
2020-02-29 22:37     ` Dan Williams
2020-02-29 22:37     ` Dan Williams
2020-02-29 22:37     ` Dan Williams
2020-02-29 22:37     ` Dan Williams
2020-03-03  9:52   ` Michal Hocko
2020-03-03  9:52     ` Michal Hocko
2020-03-03  9:52     ` Michal Hocko
2020-03-03  9:52     ` Michal Hocko
2020-03-03  9:52     ` Michal Hocko
2020-02-21 18:25 ` [PATCH v3 4/7] x86/mm: Introduce _set_memory_prot() Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-29 22:33   ` Dan Williams
2020-02-29 22:33     ` Dan Williams
2020-02-29 22:33     ` Dan Williams
2020-02-29 22:33     ` Dan Williams
2020-02-29 22:33     ` Dan Williams
2020-02-29 22:33     ` Dan Williams
2020-03-02 18:46     ` Logan Gunthorpe
2020-03-02 18:46       ` Logan Gunthorpe
2020-03-02 18:46       ` Logan Gunthorpe
2020-03-02 18:46       ` Logan Gunthorpe
2020-03-02 18:46       ` Logan Gunthorpe
2020-02-21 18:25 ` [PATCH v3 5/7] powerpc/mm: Thread pgprot_t through create_section_mapping() Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25 ` [PATCH v3 6/7] mm/memory_hotplug: Add pgprot_t to mhp_params Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-24  9:26   ` David Hildenbrand
2020-02-24  9:26     ` David Hildenbrand
2020-02-24  9:26     ` David Hildenbrand
2020-02-24  9:26     ` David Hildenbrand
2020-02-29 22:44   ` Dan Williams
2020-02-29 22:44     ` Dan Williams
2020-02-29 22:44     ` Dan Williams
2020-02-29 22:44     ` Dan Williams
2020-02-29 22:44     ` Dan Williams
2020-02-29 22:44     ` Dan Williams
2020-03-02 18:55     ` Logan Gunthorpe
2020-03-02 18:55       ` Logan Gunthorpe
2020-03-02 18:55       ` Logan Gunthorpe
2020-03-02 18:55       ` Logan Gunthorpe
2020-03-02 18:55       ` Logan Gunthorpe
2020-03-02 20:26       ` Dan Williams
2020-03-02 20:26         ` Dan Williams
2020-03-02 20:26         ` Dan Williams
2020-03-02 20:26         ` Dan Williams
2020-03-02 20:26         ` Dan Williams
2020-03-02 20:26         ` Dan Williams
2020-02-21 18:25 ` [PATCH v3 7/7] mm/memremap: Set caching mode for PCI P2PDMA memory to WC Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-21 18:25   ` Logan Gunthorpe
2020-02-29 22:47   ` Dan Williams
2020-02-29 22:47     ` Dan Williams
2020-02-29 22:47     ` Dan Williams
2020-02-29 22:47     ` Dan Williams
2020-02-29 22:47     ` Dan Williams
2020-02-29 22:47     ` Dan Williams
2020-03-02 21:20     ` Logan Gunthorpe
2020-03-02 21:20       ` Logan Gunthorpe
2020-03-02 21:20       ` Logan Gunthorpe
2020-03-02 21:20       ` Logan Gunthorpe
2020-03-02 21:20       ` Logan Gunthorpe
2020-02-27 17:17 ` [PATCH v3 0/7] Allow setting caching mode in arch_add_memory() for P2PDMA Jason Gunthorpe
2020-02-27 17:17   ` Jason Gunthorpe
2020-02-27 17:17   ` Jason Gunthorpe
2020-02-27 17:17   ` Jason Gunthorpe
2020-02-27 17:17   ` Jason Gunthorpe
2020-02-27 17:21   ` Logan Gunthorpe
2020-02-27 17:21     ` Logan Gunthorpe
2020-02-27 17:21     ` Logan Gunthorpe
2020-02-27 17:21     ` Logan Gunthorpe
2020-02-27 17:21     ` Logan Gunthorpe
2020-02-27 17:43     ` Jason Gunthorpe
2020-02-27 17:43       ` Jason Gunthorpe
2020-02-27 17:43       ` Jason Gunthorpe
2020-02-27 17:43       ` Jason Gunthorpe
2020-02-27 17:43       ` Jason Gunthorpe
2020-02-27 17:54       ` Logan Gunthorpe [this message]
2020-02-27 17:54         ` Logan Gunthorpe
2020-02-27 17:54         ` Logan Gunthorpe
2020-02-27 17:54         ` Logan Gunthorpe
2020-02-27 17:54         ` Logan Gunthorpe
2020-02-27 17:55       ` Dan Williams
2020-02-27 17:55         ` Dan Williams
2020-02-27 17:55         ` Dan Williams
2020-02-27 17:55         ` Dan Williams
2020-02-27 17:55         ` Dan Williams
2020-02-27 17:55         ` Dan Williams
2020-02-27 18:03         ` Jason Gunthorpe
2020-02-27 18:03           ` Jason Gunthorpe
2020-02-27 18:03           ` Jason Gunthorpe
2020-02-27 18:03           ` Jason Gunthorpe
2020-02-27 18:03           ` Jason Gunthorpe
2020-02-27 18:08           ` Dan Williams
2020-02-27 18:08             ` Dan Williams
2020-02-27 18:08             ` Dan Williams
2020-02-27 18:08             ` Dan Williams
2020-02-27 18:08             ` Dan Williams
2020-02-27 18:08             ` Dan Williams

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=7e573498-81c1-7f00-c1ff-ed16e12a5b96@deltatee.com \
    --to=logang@deltatee.com \
    --cc=akpm@linux-foundation.org \
    --cc=benh@kernel.crashing.org \
    --cc=bp@alien8.de \
    --cc=catalin.marinas@arm.com \
    --cc=dan.j.williams@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=david@redhat.com \
    --cc=ebadger@gigaio.com \
    --cc=hch@lst.de \
    --cc=jgg@ziepe.ca \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=luto@kernel.org \
    --cc=mhocko@kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=will@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.