xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH for-4.5 v2 0/8] xen: arm: map normal memory as inner shareable, reduce scope of various barriers
@ 2014-02-13 12:37 Ian Campbell
  2014-02-13 12:38 ` [PATCH for-4.5 v2 1/8] xen: arm: map memory as inner shareable Ian Campbell
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Ian Campbell @ 2014-02-13 12:37 UTC (permalink / raw)
  To: xen-devel; +Cc: Julien Grall, Stefano Stabellini, Tim Deegan

Currently Xen maps all RAM as Outer-Shareable, since that seemed like
the most conservative option early on when we didn't really know what
Inner- vs. Outer-Shareable meant. However we have long suspected that
actually Inner-Shareable would be the correct type to use.

After reading the docs many times, getting more confused each time, I
finally got a reasonable explanation from a man (and a dog) down the
pub: Inner-Shareable == the processors in an SMP system, while
Outer-Shareable == devices. (NB: Not a random man, he knew what he was
talking about...). With that in mind switch all of Xen's memory mapping,
page table walks and an appropriate subset of the barriers to be inner
shareable.

In addition I have switched barriers to use the correct read/write/any
variants for their types. Note that I have only tackled the generic
mb/rmb/wmb and smp_* barriers (mainly used by common code) here. There
are also quite a few open-coded full-system dsb's in the arch code which
I will look at another time.

v1 of this was back in June[0], and I deferred it due to the 4.3 freeze,
so given that we are now frozen for 4.4 this is clearly 4.5 material.

I've slightly forgotten what was changed since then, but apart from
rebasing the highlights are:

      * dropped all the bogus tlb flush stuff, which was wrong, or at
        best confused.
      * mfn_to_p2m_entry sets shareability based on mattr, dev mappings
        remain outer
      * some clarifications to the comments.

[0] http://lists.xen.org/archives/html/xen-devel/2013-06/msg02969.html

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2014-02-13 12:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-13 12:37 [PATCH for-4.5 v2 0/8] xen: arm: map normal memory as inner shareable, reduce scope of various barriers Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 1/8] xen: arm: map memory as inner shareable Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 2/8] xen: arm: Only upgrade guest barriers to " Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 3/8] xen: arm: consolidate barrier definitions Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 4/8] xen: arm: Use SMP barriers when that is all which is required Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 5/8] xen: arm: Use dmb for smp barriers Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 6/8] xen: arm: add scope to dsb and dmb macros Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 7/8] xen: arm: weaken SMP barriers to inner shareable Ian Campbell
2014-02-13 12:38 ` [PATCH for-4.5 v2 8/8] xen: arm: use more specific barriers for read and write barriers Ian Campbell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).