linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] Add support for pldw instruction on v7 MP cores
@ 2013-07-23 11:36 Will Deacon
  2013-07-23 11:36 ` [PATCH 1/6] ARM: prefetch: remove redundant "cc" clobber Will Deacon
                   ` (5 more replies)
  0 siblings, 6 replies; 30+ messages in thread
From: Will Deacon @ 2013-07-23 11:36 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

This patch series adds support for the pldw instruction implemented on
ARMv7 SMP processors. The instruction is used to implement the prefetchw
macro, which is then used around barrier-less ldrex/strex sections (i.e.
the prefetch isn't blocked either side by memory barriers) to increase
the chances of the strex succeeding initially.

On my TC2 board (A7s + A15s), I see a ~1.3% boost in hackbench scores
on top of my barriers patch series.

All feedback welcome,

Will


Will Deacon (6):
  ARM: prefetch: remove redundant "cc" clobber
  ARM: smp_on_up: move inline asm ALT_SMP patching macro out of
    spinlock.h
  ARM: prefetch: add support for prefetchw using pldw on SMP ARMv7+ CPUs
  ARM: locks: prefetch the destination word for write prior to strex
  ARM: atomics: prefetch the destination word for write prior to strex
  ARM: bitops: prefetch the destination word for write prior to strex

 arch/arm/include/asm/atomic.h    |  7 +++++++
 arch/arm/include/asm/processor.h | 33 +++++++++++++++++++++++++--------
 arch/arm/include/asm/spinlock.h  | 24 ++++++++++++------------
 arch/arm/include/asm/unified.h   |  4 ++++
 arch/arm/lib/bitops.h            |  5 +++++
 5 files changed, 53 insertions(+), 20 deletions(-)

-- 
1.8.2.2

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

end of thread, other threads:[~2013-07-26 14:46 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-23 11:36 [PATCH 0/6] Add support for pldw instruction on v7 MP cores Will Deacon
2013-07-23 11:36 ` [PATCH 1/6] ARM: prefetch: remove redundant "cc" clobber Will Deacon
2013-07-23 19:48   ` Nicolas Pitre
2013-07-24 10:19     ` Will Deacon
2013-07-24 16:16       ` Nicolas Pitre
2013-07-24 16:35         ` Will Deacon
2013-07-24 16:58           ` Russell King - ARM Linux
2013-07-24 17:22             ` Nicolas Pitre
2013-07-23 11:36 ` [PATCH 2/6] ARM: smp_on_up: move inline asm ALT_SMP patching macro out of spinlock.h Will Deacon
2013-07-23 19:55   ` Nicolas Pitre
2013-07-23 11:36 ` [PATCH 3/6] ARM: prefetch: add support for prefetchw using pldw on SMP ARMv7+ CPUs Will Deacon
2013-07-23 20:05   ` Nicolas Pitre
2013-07-24 10:42     ` Will Deacon
2013-07-23 11:36 ` [PATCH 4/6] ARM: locks: prefetch the destination word for write prior to strex Will Deacon
2013-07-23 20:10   ` Nicolas Pitre
2013-07-24 11:18     ` Will Deacon
2013-07-25 17:31       ` Stephen Boyd
2013-07-25 17:37         ` Stephen Boyd
2013-07-25 17:45           ` Will Deacon
2013-07-25 17:48             ` Will Deacon
2013-07-25 17:55             ` Stephen Boyd
2013-07-25 18:05               ` Will Deacon
2013-07-25 18:22                 ` Stephen Boyd
2013-07-25 20:24             ` Nicolas Pitre
2013-07-26 10:34               ` Will Deacon
2013-07-26 14:46                 ` Nicolas Pitre
2013-07-23 11:36 ` [PATCH 5/6] ARM: atomics: " Will Deacon
2013-07-23 20:12   ` Nicolas Pitre
2013-07-23 11:36 ` [PATCH 6/6] ARM: bitops: " Will Deacon
2013-07-23 20:15   ` Nicolas Pitre

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).