linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC][PATCH 0/5] arch: atomic rework
@ 2014-02-06 13:48 Peter Zijlstra
  2014-02-06 13:48 ` [RFC][PATCH 1/5] ia64: Fix up smp_mb__{before,after}_clear_bit Peter Zijlstra
                   ` (6 more replies)
  0 siblings, 7 replies; 299+ messages in thread
From: Peter Zijlstra @ 2014-02-06 13:48 UTC (permalink / raw)
  To: linux-arch, linux-kernel
  Cc: torvalds, akpm, mingo, will.deacon, paulmck, Peter Zijlstra

Hi all,

A few too large patches here, mostly as RFC to see if we want to continue with
this before I sink more time into it. I hope they make it out to the lists.

This all started with me wanting to implement atomic_sub_release() for all
archs, but I got side-tracked a bit and it ended up cleaning up bits and
deleting almost 1400 lines of code.

Its been compiled on everything I have a compiler for, however frv and
tile are missing because they're special and I was tired.

---
 Documentation/atomic_ops.txt                      |   31 -
 Documentation/memory-barriers.txt                 |   44 -
 a/arch/arc/include/asm/barrier.h                  |   37 -
 a/arch/hexagon/include/asm/barrier.h              |   37 -
 arch/alpha/include/asm/atomic.h                   |  225 +++-----
 arch/alpha/include/asm/bitops.h                   |    3 
 arch/arc/include/asm/atomic.h                     |  198 ++-----
 arch/arc/include/asm/bitops.h                     |    5 
 arch/arm/include/asm/atomic.h                     |  301 ++++-------
 arch/arm/include/asm/barrier.h                    |    3 
 arch/arm/include/asm/bitops.h                     |    4 
 arch/arm64/include/asm/atomic.h                   |  212 +++-----
 arch/arm64/include/asm/barrier.h                  |    3 
 arch/arm64/include/asm/bitops.h                   |    9 
 arch/avr32/include/asm/atomic.h                   |   95 +--
 arch/avr32/include/asm/bitops.h                   |    9 
 arch/blackfin/include/asm/atomic.h                |    5 
 arch/blackfin/include/asm/barrier.h               |    3 
 arch/blackfin/include/asm/bitops.h                |   14 
 arch/blackfin/mach-common/smp.c                   |    2 
 arch/c6x/include/asm/bitops.h                     |    8 
 arch/cris/include/arch-v10/arch/system.h          |    2 
 arch/cris/include/asm/atomic.h                    |   66 +-
 arch/cris/include/asm/bitops.h                    |    9 
 arch/frv/include/asm/atomic.h                     |    7 
 arch/frv/include/asm/bitops.h                     |    6 
 arch/hexagon/include/asm/atomic.h                 |   74 +-
 arch/hexagon/include/asm/bitops.h                 |    4 
 arch/ia64/include/asm/atomic.h                    |  212 ++++----
 arch/ia64/include/asm/barrier.h                   |    3 
 arch/ia64/include/asm/bitops.h                    |    9 
 arch/ia64/include/uapi/asm/cmpxchg.h              |    9 
 arch/m32r/include/asm/atomic.h                    |  191 ++-----
 arch/m32r/include/asm/bitops.h                    |    6 
 arch/m32r/kernel/smp.c                            |    4 
 arch/m68k/include/asm/atomic.h                    |  130 +----
 arch/m68k/include/asm/bitops.h                    |    7 
 arch/metag/include/asm/atomic.h                   |    6 
 arch/metag/include/asm/atomic_lnkget.h            |  159 +-----
 arch/metag/include/asm/atomic_lock1.h             |  100 +--
 arch/metag/include/asm/barrier.h                  |    3 
 arch/metag/include/asm/bitops.h                   |    6 
 arch/mips/include/asm/atomic.h                    |  570 +++++++---------------
 arch/mips/include/asm/barrier.h                   |    3 
 arch/mips/include/asm/bitops.h                    |   11 
 arch/mips/kernel/irq.c                            |    4 
 arch/mn10300/include/asm/atomic.h                 |  199 +------
 arch/mn10300/include/asm/bitops.h                 |    4 
 arch/mn10300/mm/tlb-smp.c                         |    6 
 arch/openrisc/include/asm/bitops.h                |    9 
 arch/parisc/include/asm/atomic.h                  |  121 ++--
 arch/parisc/include/asm/bitops.h                  |    4 
 arch/powerpc/include/asm/atomic.h                 |  214 +++-----
 arch/powerpc/include/asm/barrier.h                |    3 
 arch/powerpc/include/asm/bitops.h                 |    6 
 arch/powerpc/kernel/crash.c                       |    2 
 arch/powerpc/kernel/misc_32.S                     |   19 
 arch/s390/include/asm/atomic.h                    |   93 ++-
 arch/s390/include/asm/barrier.h                   |    5 
 arch/s390/include/asm/bitops.h                    |    1 
 arch/s390/kernel/time.c                           |    4 
 arch/s390/kvm/diag.c                              |    2 
 arch/s390/kvm/intercept.c                         |    2 
 arch/s390/kvm/interrupt.c                         |   16 
 arch/s390/kvm/kvm-s390.c                          |   14 
 arch/s390/kvm/sigp.c                              |    6 
 arch/score/include/asm/bitops.h                   |    7 
 arch/sh/include/asm/atomic-grb.h                  |  164 +-----
 arch/sh/include/asm/atomic-irq.h                  |   88 +--
 arch/sh/include/asm/atomic-llsc.h                 |  135 +----
 arch/sh/include/asm/atomic.h                      |    6 
 arch/sh/include/asm/bitops.h                      |    7 
 arch/sparc/include/asm/atomic_32.h                |   30 -
 arch/sparc/include/asm/atomic_64.h                |   53 --
 arch/sparc/include/asm/barrier_32.h               |    1 
 arch/sparc/include/asm/barrier_64.h               |    3 
 arch/sparc/include/asm/bitops_32.h                |    4 
 arch/sparc/include/asm/bitops_64.h                |    4 
 arch/sparc/include/asm/processor.h                |    2 
 arch/sparc/kernel/smp_64.c                        |    2 
 arch/sparc/lib/atomic32.c                         |   28 -
 arch/sparc/lib/atomic_64.S                        |  167 ++----
 arch/sparc/lib/ksyms.c                            |   20 
 arch/tile/include/asm/atomic_32.h                 |   10 
 arch/tile/include/asm/atomic_64.h                 |    6 
 arch/tile/include/asm/barrier.h                   |   14 
 arch/tile/include/asm/bitops.h                    |    1 
 arch/tile/include/asm/bitops_32.h                 |    8 
 arch/tile/include/asm/bitops_64.h                 |    4 
 arch/x86/include/asm/atomic.h                     |   39 -
 arch/x86/include/asm/atomic64_32.h                |   20 
 arch/x86/include/asm/atomic64_64.h                |   22 
 arch/x86/include/asm/barrier.h                    |    4 
 arch/x86/include/asm/bitops.h                     |    6 
 arch/x86/include/asm/sync_bitops.h                |    2 
 arch/x86/kernel/apic/hw_nmi.c                     |    2 
 arch/xtensa/include/asm/atomic.h                  |  318 +++---------
 arch/xtensa/include/asm/bitops.h                  |    4 
 block/blk-iopoll.c                                |    4 
 crypto/chainiv.c                                  |    2 
 drivers/base/power/domain.c                       |    2 
 drivers/block/mtip32xx/mtip32xx.c                 |    4 
 drivers/cpuidle/coupled.c                         |    2 
 drivers/firewire/ohci.c                           |    2 
 drivers/gpu/drm/drm_irq.c                         |   10 
 drivers/gpu/drm/i915/i915_irq.c                   |    6 
 drivers/md/bcache/bcache.h                        |    2 
 drivers/md/bcache/closure.h                       |    2 
 drivers/md/dm-bufio.c                             |    8 
 drivers/md/dm-snap.c                              |    4 
 drivers/md/dm.c                                   |    2 
 drivers/md/raid5.c                                |    2 
 drivers/media/usb/dvb-usb-v2/dvb_usb_core.c       |    6 
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c   |    6 
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c  |   34 -
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c    |   26 -
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c |   12 
 drivers/net/ethernet/broadcom/cnic.c              |    8 
 drivers/net/ethernet/brocade/bna/bnad.c           |    6 
 drivers/net/ethernet/chelsio/cxgb/cxgb2.c         |    2 
 drivers/net/ethernet/chelsio/cxgb3/sge.c          |    6 
 drivers/net/ethernet/chelsio/cxgb4/sge.c          |    2 
 drivers/net/ethernet/chelsio/cxgb4vf/sge.c        |    2 
 drivers/net/ethernet/intel/i40e/i40e_main.c       |    2 
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c     |    4 
 drivers/net/wireless/ti/wlcore/main.c             |    2 
 drivers/pci/xen-pcifront.c                        |    4 
 drivers/s390/scsi/zfcp_aux.c                      |    2 
 drivers/s390/scsi/zfcp_erp.c                      |   68 +-
 drivers/s390/scsi/zfcp_fc.c                       |    8 
 drivers/s390/scsi/zfcp_fsf.c                      |   30 -
 drivers/s390/scsi/zfcp_qdio.c                     |   14 
 drivers/scsi/isci/remote_device.c                 |    2 
 drivers/target/loopback/tcm_loop.c                |    4 
 drivers/target/target_core_alua.c                 |   26 -
 drivers/target/target_core_device.c               |    6 
 drivers/target/target_core_iblock.c               |    2 
 drivers/target/target_core_pr.c                   |   56 +-
 drivers/target/target_core_transport.c            |   16 
 drivers/target/target_core_ua.c                   |   10 
 drivers/tty/n_tty.c                               |    2 
 drivers/tty/serial/mxs-auart.c                    |    4 
 drivers/usb/gadget/tcm_usb_gadget.c               |    4 
 drivers/usb/serial/usb_wwan.c                     |    2 
 drivers/vhost/scsi.c                              |    2 
 drivers/w1/w1_family.c                            |    4 
 drivers/xen/xen-pciback/pciback_ops.c             |    4 
 fs/btrfs/btrfs_inode.h                            |    2 
 fs/btrfs/extent_io.c                              |    2 
 fs/btrfs/inode.c                                  |    6 
 fs/buffer.c                                       |    2 
 fs/ext4/resize.c                                  |    2 
 fs/gfs2/glock.c                                   |    8 
 fs/gfs2/glops.c                                   |    2 
 fs/gfs2/lock_dlm.c                                |    4 
 fs/gfs2/recovery.c                                |    2 
 fs/gfs2/sys.c                                     |    4 
 fs/jbd2/commit.c                                  |    6 
 fs/nfs/dir.c                                      |   12 
 fs/nfs/inode.c                                    |    2 
 fs/nfs/nfs4filelayoutdev.c                        |    4 
 fs/nfs/nfs4state.c                                |    4 
 fs/nfs/pagelist.c                                 |    6 
 fs/nfs/pnfs.c                                     |    2 
 fs/nfs/pnfs.h                                     |    2 
 fs/nfs/write.c                                    |    4 
 fs/ubifs/lpt_commit.c                             |    4 
 fs/ubifs/tnc_commit.c                             |    4 
 include/asm-generic/atomic.h                      |  176 ++----
 include/asm-generic/atomic64.h                    |   17 
 include/asm-generic/barrier.h                     |    8 
 include/asm-generic/bitops.h                      |    8 
 include/asm-generic/bitops/atomic.h               |    2 
 include/asm-generic/bitops/lock.h                 |    2 
 include/linux/atomic.h                            |   13 
 include/linux/buffer_head.h                       |    2 
 include/linux/genhd.h                             |    2 
 include/linux/interrupt.h                         |    8 
 include/linux/netdevice.h                         |    2 
 include/linux/sched.h                             |    6 
 include/linux/sunrpc/sched.h                      |    8 
 include/linux/sunrpc/xprt.h                       |    8 
 include/linux/tracehook.h                         |    2 
 include/net/ip_vs.h                               |    4 
 kernel/debug/debug_core.c                         |    4 
 kernel/futex.c                                    |    2 
 kernel/kmod.c                                     |    2 
 kernel/rcu/tree.c                                 |   22 
 kernel/rcu/tree_plugin.h                          |    8 
 kernel/sched/cpupri.c                             |    6 
 kernel/sched/wait.c                               |    2 
 lib/atomic64.c                                    |   77 +-
 mm/backing-dev.c                                  |    2 
 mm/filemap.c                                      |    4 
 net/atm/pppoatm.c                                 |    2 
 net/bluetooth/hci_event.c                         |    4 
 net/core/dev.c                                    |    8 
 net/core/link_watch.c                             |    2 
 net/ipv4/inetpeer.c                               |    2 
 net/netfilter/nf_conntrack_core.c                 |    2 
 net/rds/ib_recv.c                                 |    4 
 net/rds/iw_recv.c                                 |    4 
 net/rds/send.c                                    |    6 
 net/rds/tcp_send.c                                |    2 
 net/sunrpc/auth.c                                 |    2 
 net/sunrpc/auth_gss/auth_gss.c                    |    2 
 net/sunrpc/backchannel_rqst.c                     |    4 
 net/sunrpc/xprt.c                                 |    4 
 net/sunrpc/xprtsock.c                             |   16 
 net/unix/af_unix.c                                |    2 
 sound/pci/bt87x.c                                 |    4 
 211 files changed, 2188 insertions(+), 3563 deletions(-)



^ permalink raw reply	[flat|nested] 299+ messages in thread
* Re: [RFC][PATCH 0/5] arch: atomic rework
@ 2014-02-18 12:12 Peter Sewell
  2014-02-18 12:53 ` Peter Zijlstra
                   ` (3 more replies)
  0 siblings, 4 replies; 299+ messages in thread
From: Peter Sewell @ 2014-02-18 12:12 UTC (permalink / raw)
  To: Peter Sewell, mark.batty@cl.cam.ac.uk, Paul McKenney, peterz,
	Torvald Riegel, torvalds, Will Deacon, Ramana.Radhakrishnan,
	dhowells, linux-arch, linux-kernel, akpm, mingo, gcc

Several of you have said that the standard and compiler should not
permit speculative writes of atomics, or (effectively) that the
compiler should preserve dependencies.  In simple examples it's easy
to see what that means, but in general it's not so clear what the
language should guarantee, because dependencies may go via non-atomic
code in other compilation units, and we have to consider the extent to
which it's desirable to limit optimisation there.

For example, suppose we have, in one compilation unit:

    void f(int ra, int*rb) {
      if (ra==42)
        *rb=42;
      else
        *rb=42;
    }

and in another compilation unit the bodies of two threads:

    // Thread 0
    r1 = x;
    f(r1,&r2);
    y = r2;

    // Thread 1
    r3 = y;
    f(r3,&r4);
    x = r4;

where accesses to x and y are annotated C11 atomic
memory_order_relaxed or Linux ACCESS_ONCE(), accesses to
r1,r2,r3,r4,ra,rb are not annotated, and x and y initially hold 0.

(Of course, this is an artificial example, to make the point below as
simply as possible - in real code the branches of the conditional
might not be syntactically identical, just equivalent after macro
expansion and other optimisation.)

In the source program there's a dependency from the read of x to the
write of y in Thread 0, and from the read of y to the write of x on
Thread 1.  Dependency-respecting compilation would preserve those and
the ARM and POWER architectures both respect them, so the reads of x
and y could not give 42.

But a compiler might well optimise the (non-atomic) body of f() to
just *rb=42, making the threads effectively

    // Thread 0
    r1 = x;
    y = 42;

    // Thread 1
    r3 = y;
    x = 42;

(GCC does this at O1, O2, and O3) and the ARM and POWER architectures
permit those two reads to see 42. That is moreover actually observable
on current ARM hardware.

So as far as we can see, either:

1) if you can accept the latter behaviour (if the Linux codebase does
   not rely on its absence), the language definition should permit it,
   and current compiler optimisations can be used,

or

2) otherwise, the language definition should prohibit it but the
   compiler would have to preserve dependencies even in compilation
   units that have no mention of atomics.  It's unclear what the
   (runtime and compiler development) cost of that would be in
   practice - perhaps Torvald could comment?


For more context, this example is taken from a summary of the thin-air
problem by Mark Batty and myself,
<www.cl.cam.ac.uk/~pes20/cpp/notes42.html>, and the problem with
dependencies via other compilation units was AFAIK first pointed out
by Hans Boehm.

Peter

^ permalink raw reply	[flat|nested] 299+ messages in thread
* Re: [RFC][PATCH 0/5] arch: atomic rework
@ 2014-02-26  3:06 George Spelvin
  2014-02-26  5:22 ` Paul E. McKenney
  0 siblings, 1 reply; 299+ messages in thread
From: George Spelvin @ 2014-02-26  3:06 UTC (permalink / raw)
  To: paulmck
  Cc: akpm, dhowells, gcc, linux, linux-arch, linux-kernel, mingo,
	peterz, Ramana.Radhakrishnan, torvalds, triegel, will.deacon

<paulmck@linux.vnet.ibm.com> wrote:
> <torvalds@linux-foundation.org> wrote:
>> I have for the last several years been 100% convinced that the Intel
>> memory ordering is the right thing, and that people who like weak
>> memory ordering are wrong and should try to avoid reproducing if at
>> all possible.
>
> Are ARM and Power really the bad boys here?  Or are they instead playing
> the role of the canary in the coal mine?

To paraphrase some older threads, I think Linus's argument is that
weak memory ordering is like branch delay slots: a way to make a simple
implementation simpler, but ends up being no help to a more aggressive
implementation.

Branch delay slots give a one-cycle bonus to in-order cores, but
once you go superscalar and add branch prediction, they stop helping,
and once you go full out of order, they're just an annoyance.

Likewise, I can see the point that weak ordering can help make a simple
cache interface simpler, but once you start doing speculative loads,
you've already bought and paid for all the hardware you need to do
stronger coherency.

Another thing that requires all the strong-coherency machinery is
a high-performance implementation of the various memory barrier and
synchronization operations.  Yes, a low-performance (drain the pipeline)
implementation is tolerable if the instructions aren't used frequently,
but once you're really trying, it doesn't save complexity.

Once you're there, strong coherency always doesn't actually cost you any
time outside of critical synchronization code, and it both simplifies
and speeds up the tricky synchronization software.


So PPC and ARM's weak ordering are not the direction the future is going.
Rather, weak ordering is something that's only useful in a limited
technology window, which is rapidly passing.

If you can find someone in IBM who's worked on the Z series cache
coherency (extremely strong ordering), they probably have some useful
insights.  The big question is if strong ordering, once you've accepted
the implementation complexity and area, actually costs anything in
execution time.  If there's an unavoidable cost which weak ordering saves,
that's significant.

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

end of thread, other threads:[~2014-03-07 19:11 UTC | newest]

Thread overview: 299+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-06 13:48 [RFC][PATCH 0/5] arch: atomic rework Peter Zijlstra
2014-02-06 13:48 ` [RFC][PATCH 1/5] ia64: Fix up smp_mb__{before,after}_clear_bit Peter Zijlstra
2014-02-06 13:48 ` [RFC][PATCH 2/5] arc,hexagon: Delete asm/barrier.h Peter Zijlstra
2014-02-06 13:48 ` [RFC][PATCH 3/5] arch: s/smp_mb__(before|after)_(atomic|clear)_(dec,inc,bit)/smp_mb__\1/g Peter Zijlstra
2014-02-06 19:12   ` Paul E. McKenney
2014-02-07  9:52     ` Will Deacon
2014-02-06 13:48 ` [RFC][PATCH 4/5] arch: Generic atomic.h cleanup Peter Zijlstra
2014-02-06 17:49   ` Will Deacon
2014-02-06 13:48 ` [RFC][PATCH 5/5] arch: Sanitize atomic_t bitwise ops Peter Zijlstra
2014-02-06 14:43   ` Geert Uytterhoeven
2014-02-06 16:14     ` Peter Zijlstra
2014-02-06 16:53   ` Linus Torvalds
2014-02-06 17:52     ` Peter Zijlstra
2014-02-06 17:56       ` Linus Torvalds
2014-02-06 18:09         ` Peter Zijlstra
2014-02-06 18:25 ` [RFC][PATCH 0/5] arch: atomic rework David Howells
2014-02-06 18:30   ` Peter Zijlstra
2014-02-06 18:42   ` Paul E. McKenney
2014-02-06 18:55   ` Ramana Radhakrishnan
2014-02-06 18:59     ` Will Deacon
2014-02-06 19:27       ` Paul E. McKenney
2014-02-06 21:17         ` Torvald Riegel
2014-02-06 22:11           ` Paul E. McKenney
2014-02-06 23:44             ` Torvald Riegel
2014-02-07  4:20               ` Paul E. McKenney
2014-02-07  7:44                 ` Peter Zijlstra
2014-02-07 16:50                   ` Paul E. McKenney
2014-02-07 16:55                     ` Will Deacon
2014-02-07 17:06                       ` Peter Zijlstra
2014-02-07 17:13                         ` Will Deacon
2014-02-07 17:20                           ` Peter Zijlstra
2014-02-07 18:03                           ` Paul E. McKenney
2014-02-07 17:46                         ` Joseph S. Myers
2014-02-07 18:43                         ` Torvald Riegel
2014-02-07 18:02                       ` Paul E. McKenney
2014-02-10  0:27                         ` Torvald Riegel
2014-02-10  0:56                           ` Linus Torvalds
2014-02-10  1:16                             ` Torvald Riegel
2014-02-10  1:24                               ` Linus Torvalds
2014-02-10  1:46                                 ` Torvald Riegel
2014-02-10  2:04                                   ` Linus Torvalds
2014-02-10  3:21                           ` Paul E. McKenney
2014-02-10  3:45                           ` Paul E. McKenney
2014-02-10 11:46                           ` Peter Zijlstra
2014-02-10 19:09                           ` Linus Torvalds
2014-02-11 15:59                             ` Paul E. McKenney
2014-02-12  6:06                               ` Torvald Riegel
2014-02-12  9:19                                 ` Peter Zijlstra
2014-02-12 17:42                                   ` Paul E. McKenney
2014-02-12 18:12                                     ` Peter Zijlstra
2014-02-17 18:18                                       ` Paul E. McKenney
2014-02-17 20:39                                         ` Richard Biener
2014-02-17 22:14                                           ` Paul E. McKenney
2014-02-17 22:27                                             ` Torvald Riegel
2014-02-14  5:07                                   ` Torvald Riegel
2014-02-14  9:50                                     ` Peter Zijlstra
2014-02-14 19:19                                       ` Torvald Riegel
2014-02-12 17:39                                 ` Paul E. McKenney
2014-02-12  5:39                             ` Torvald Riegel
2014-02-12 18:07                               ` Paul E. McKenney
2014-02-12 20:22                                 ` Linus Torvalds
2014-02-13  0:23                                   ` Paul E. McKenney
2014-02-13 20:03                                     ` Torvald Riegel
2014-02-14  2:01                                       ` Paul E. McKenney
2014-02-14  4:43                                         ` Torvald Riegel
2014-02-14 17:29                                           ` Paul E. McKenney
2014-02-14 19:21                                             ` Torvald Riegel
2014-02-14 19:50                                             ` Linus Torvalds
2014-02-14 20:02                                               ` Linus Torvalds
2014-02-15  2:08                                                 ` Paul E. McKenney
2014-02-15  2:44                                                   ` Linus Torvalds
2014-02-15  2:48                                                     ` Linus Torvalds
2014-02-15  6:35                                                       ` Paul E. McKenney
2014-02-15  6:58                                                         ` Paul E. McKenney
2014-02-15 18:07                                                     ` Torvald Riegel
2014-02-17 18:59                                                       ` Joseph S. Myers
2014-02-17 19:19                                                         ` Will Deacon
2014-02-17 19:41                                                         ` Torvald Riegel
2014-02-17 23:12                                                           ` Joseph S. Myers
2014-02-15 17:45                                                 ` Torvald Riegel
2014-02-15 18:49                                                   ` Linus Torvalds
2014-02-17 19:55                                                     ` Torvald Riegel
2014-02-17 20:18                                                       ` Linus Torvalds
2014-02-17 21:21                                                         ` Torvald Riegel
2014-02-17 22:02                                                           ` Linus Torvalds
2014-02-17 22:25                                                             ` Torvald Riegel
2014-02-17 22:47                                                               ` Linus Torvalds
2014-02-17 23:41                                                                 ` Torvald Riegel
2014-02-18  0:18                                                                   ` Linus Torvalds
2014-02-18  1:26                                                                     ` Paul E. McKenney
2014-02-18 15:38                                                                     ` Torvald Riegel
2014-02-18 16:55                                                                       ` Paul E. McKenney
2014-02-18 19:57                                                                         ` Torvald Riegel
2014-02-17 23:10                                                         ` Alec Teal
2014-02-18  0:05                                                           ` Linus Torvalds
2014-02-18 15:31                                                             ` Torvald Riegel
2014-02-18 16:49                                                               ` Linus Torvalds
2014-02-18 17:16                                                                 ` Paul E. McKenney
2014-02-18 18:23                                                                   ` Peter Sewell
2014-02-18 19:00                                                                     ` Linus Torvalds
2014-02-18 19:42                                                                     ` Paul E. McKenney
2014-02-18 21:40                                                                   ` Torvald Riegel
2014-02-18 21:52                                                                     ` Peter Zijlstra
2014-02-19  9:52                                                                       ` Torvald Riegel
2014-02-18 22:58                                                                     ` Paul E. McKenney
2014-02-19 10:59                                                                       ` Torvald Riegel
2014-02-19 15:14                                                                         ` Paul E. McKenney
2014-02-19 17:55                                                                           ` Torvald Riegel
2014-02-19 22:12                                                                             ` Paul E. McKenney
2014-02-18 21:21                                                                 ` Torvald Riegel
2014-02-18 21:40                                                                   ` Peter Zijlstra
2014-02-18 21:47                                                                     ` Torvald Riegel
2014-02-19 15:23                                                                       ` David Lang
2014-02-19 18:11                                                                         ` Torvald Riegel
2014-02-18 21:47                                                                   ` Peter Zijlstra
2014-02-19 11:07                                                                     ` Torvald Riegel
2014-02-19 11:42                                                                       ` Peter Zijlstra
2014-02-18 22:14                                                                   ` Linus Torvalds
2014-02-19 14:40                                                                     ` Torvald Riegel
2014-02-19 19:49                                                                       ` Linus Torvalds
2014-02-18  3:00                                                         ` Paul E. McKenney
2014-02-18  3:24                                                           ` Linus Torvalds
2014-02-18  3:42                                                             ` Linus Torvalds
2014-02-18  5:22                                                               ` Paul E. McKenney
2014-02-18 16:17                                                               ` Torvald Riegel
2014-02-18 17:44                                                                 ` Linus Torvalds
2014-02-18 19:40                                                                   ` Paul E. McKenney
2014-02-18 19:47                                                                   ` Torvald Riegel
2014-02-20  0:53                                                                     ` Linus Torvalds
2014-02-20  4:01                                                                       ` Paul E. McKenney
2014-02-20  4:43                                                                         ` Linus Torvalds
2014-02-20  8:30                                                                           ` Paul E. McKenney
2014-02-20  9:20                                                                             ` Paul E. McKenney
2014-02-20 17:01                                                                             ` Linus Torvalds
2014-02-20 18:11                                                                               ` Paul E. McKenney
2014-02-20 18:32                                                                                 ` Linus Torvalds
2014-02-20 18:53                                                                                   ` Torvald Riegel
2014-02-20 19:09                                                                                     ` Linus Torvalds
2014-02-22 18:53                                                                                       ` Torvald Riegel
2014-02-22 21:53                                                                                         ` Linus Torvalds
2014-02-23  0:39                                                                                           ` Paul E. McKenney
2014-02-23  3:50                                                                                             ` Linus Torvalds
2014-02-23  6:34                                                                                               ` Paul E. McKenney
2014-02-23 19:31                                                                                                 ` Linus Torvalds
2014-02-24  1:16                                                                                                   ` Paul E. McKenney
2014-02-24  1:35                                                                                                     ` Linus Torvalds
2014-02-24  4:59                                                                                                       ` Paul E. McKenney
2014-02-24  5:25                                                                                                         ` Linus Torvalds
2014-02-24 15:57                                                                                                   ` Linus Torvalds
2014-02-24 16:27                                                                                                     ` Richard Biener
2014-02-24 16:37                                                                                                       ` Linus Torvalds
2014-02-24 16:40                                                                                                         ` Linus Torvalds
2014-02-24 16:55                                                                                                         ` Michael Matz
2014-02-24 17:28                                                                                                           ` Paul E. McKenney
2014-02-24 17:57                                                                                                             ` Paul E. McKenney
2014-02-26 17:39                                                                                                             ` Torvald Riegel
2014-02-24 17:38                                                                                                           ` Linus Torvalds
2014-02-24 18:12                                                                                                             ` Paul E. McKenney
2014-02-26 17:34                                                                                                             ` Torvald Riegel
2014-02-24 17:21                                                                                                     ` Paul E. McKenney
2014-02-24 18:14                                                                                                       ` Linus Torvalds
2014-02-24 18:53                                                                                                         ` Paul E. McKenney
2014-02-24 19:54                                                                                                           ` Linus Torvalds
2014-02-24 22:37                                                                                                             ` Paul E. McKenney
2014-02-24 23:35                                                                                                               ` Linus Torvalds
2014-02-25  6:00                                                                                                                 ` Paul E. McKenney
2014-02-26  1:47                                                                                                                   ` Linus Torvalds
2014-02-26  5:12                                                                                                                     ` Paul E. McKenney
2014-02-25  6:05                                                                                                                 ` Linus Torvalds
2014-02-26  0:15                                                                                                                   ` Paul E. McKenney
2014-02-26  3:32                                                                                                                     ` Jeff Law
2014-02-26  5:23                                                                                                                       ` Paul E. McKenney
2014-02-27 15:37                                                                                                             ` Torvald Riegel
2014-02-27 17:01                                                                                                               ` Linus Torvalds
2014-02-27 19:06                                                                                                                 ` Paul E. McKenney
2014-02-27 19:47                                                                                                                   ` Linus Torvalds
2014-02-27 20:53                                                                                                                     ` Paul E. McKenney
2014-03-01  0:50                                                                                                                       ` Paul E. McKenney
2014-03-01 10:06                                                                                                                         ` Peter Sewell
2014-03-01 14:03                                                                                                                           ` Paul E. McKenney
2014-03-02 10:05                                                                                                                             ` Peter Sewell
2014-03-02 23:20                                                                                                                               ` Paul E. McKenney
2014-03-02 23:44                                                                                                                                 ` Peter Sewell
2014-03-03  4:25                                                                                                                                   ` Paul E. McKenney
2014-03-03 20:44                                                                                                                               ` Torvald Riegel
2014-03-04 22:11                                                                                                                                 ` Peter Sewell
2014-03-05 17:15                                                                                                                                   ` Torvald Riegel
2014-03-05 18:37                                                                                                                                     ` Peter Sewell
2014-03-03 18:55                                                                                                                         ` Torvald Riegel
2014-03-03 19:20                                                                                                                           ` Paul E. McKenney
2014-03-03 20:46                                                                                                                             ` Torvald Riegel
2014-03-04 19:00                                                                                                                               ` Paul E. McKenney
2014-03-04 21:35                                                                                                                                 ` Paul E. McKenney
2014-03-05 16:54                                                                                                                                   ` Torvald Riegel
2014-03-05 18:15                                                                                                                                     ` Paul E. McKenney
2014-03-07 18:33                                                                                                                                       ` Torvald Riegel
2014-03-07 19:11                                                                                                                                         ` Paul E. McKenney
2014-03-05 16:26                                                                                                                                 ` Torvald Riegel
2014-03-05 18:01                                                                                                                                   ` Paul E. McKenney
2014-03-07 17:45                                                                                                                                     ` Torvald Riegel
2014-03-07 19:02                                                                                                                                       ` Paul E. McKenney
2014-03-03 18:59                                                                                                                     ` Torvald Riegel
2014-03-03 15:36                                                                                                                 ` Torvald Riegel
2014-02-27 17:50                                                                                                               ` Paul E. McKenney
2014-02-27 19:22                                                                                                                 ` Paul E. McKenney
2014-02-28  1:02                                                                                                                 ` Paul E. McKenney
2014-03-03 19:01                                                                                                                 ` Torvald Riegel
2014-02-20 18:56                                                                                   ` Paul E. McKenney
2014-02-20 19:45                                                                                     ` Linus Torvalds
2014-02-20 22:10                                                                                       ` Paul E. McKenney
2014-02-20 22:52                                                                                         ` Linus Torvalds
2014-02-21 18:35                                                                                           ` Michael Matz
2014-02-21 19:13                                                                                             ` Paul E. McKenney
2014-02-21 22:10                                                                                               ` Joseph S. Myers
2014-02-21 22:37                                                                                                 ` Paul E. McKenney
2014-02-26 13:09                                                                                                 ` Torvald Riegel
2014-02-26 18:43                                                                                                   ` Joseph S. Myers
2014-02-27  0:52                                                                                                     ` Torvald Riegel
2014-02-24 13:55                                                                                               ` Michael Matz
2014-02-24 17:40                                                                                                 ` Paul E. McKenney
2014-02-26 13:04                                                                                               ` Torvald Riegel
2014-02-26 18:27                                                                                                 ` Paul E. McKenney
2014-02-20 18:44                                                                                 ` Torvald Riegel
2014-02-20 18:56                                                                                   ` Paul E. McKenney
2014-02-20 18:23                                                                               ` Torvald Riegel
     [not found]                                                                               ` <CAHWkzRQZ8+gOGMFNyTKjFNzpUv6d_J1G9KL0x_iCa=YCgvEojQ@mail.gmail.com>
2014-02-21 19:16                                                                                 ` Linus Torvalds
2014-02-21 19:41                                                                                   ` Linus Torvalds
2014-02-21 19:48                                                                                     ` Peter Sewell
     [not found]                                                                                   ` <CAHWkzRSO82jU-9dtTEjHaW2FeLcEqdZXxp5Q8cmVTTT9uhZQYw@mail.gmail.com>
2014-02-21 20:22                                                                                     ` Linus Torvalds
     [not found]                                                                                 ` <CAHWkzRRxqhH+DnuQHu9bM4ywGBen3oqtT8W4Xqt1CFAHy2WQRg@mail.gmail.com>
2014-02-21 19:24                                                                                   ` Paul E. McKenney
2014-02-20 17:54                                                                             ` Torvald Riegel
2014-02-20 18:11                                                                               ` Paul E. McKenney
2014-02-20 17:49                                                                           ` Torvald Riegel
2014-02-20 18:25                                                                             ` Linus Torvalds
2014-02-20 19:02                                                                               ` Linus Torvalds
2014-02-20 19:06                                                                                 ` Linus Torvalds
2014-02-20 17:26                                                                         ` Torvald Riegel
2014-02-20 18:18                                                                           ` Paul E. McKenney
2014-02-22 18:30                                                                             ` Torvald Riegel
2014-02-22 20:17                                                                               ` Paul E. McKenney
2014-02-20 17:14                                                                       ` Torvald Riegel
2014-02-20 17:34                                                                         ` Linus Torvalds
2014-02-20 18:12                                                                           ` Torvald Riegel
2014-02-20 18:26                                                                           ` Paul E. McKenney
2014-02-18  5:01                                                             ` Paul E. McKenney
2014-02-18 15:56                                                           ` Torvald Riegel
2014-02-18 16:51                                                             ` Paul E. McKenney
2014-02-17 20:23                                                       ` Paul E. McKenney
2014-02-17 21:05                                                         ` Torvald Riegel
2014-02-15 17:30                                               ` Torvald Riegel
2014-02-15 19:15                                                 ` Linus Torvalds
2014-02-17 22:09                                                   ` Torvald Riegel
2014-02-17 22:32                                                     ` Linus Torvalds
2014-02-17 23:17                                                       ` Torvald Riegel
2014-02-18  0:09                                                         ` Linus Torvalds
2014-02-18 15:46                                                           ` Torvald Riegel
2014-02-10 11:48                         ` Peter Zijlstra
2014-02-10 11:49                           ` Will Deacon
2014-02-10 12:05                             ` Peter Zijlstra
2014-02-10 15:04                             ` Paul E. McKenney
2014-02-10 16:22                               ` Will Deacon
2014-02-07 18:44                     ` Torvald Riegel
2014-02-10  0:06                 ` Torvald Riegel
2014-02-10  3:51                   ` Paul E. McKenney
2014-02-12  5:13                     ` Torvald Riegel
2014-02-12 18:26                       ` Paul E. McKenney
2014-02-06 21:09       ` Torvald Riegel
2014-02-06 21:55         ` Paul E. McKenney
2014-02-06 22:58           ` Torvald Riegel
2014-02-07  4:06             ` Paul E. McKenney
2014-02-07  9:13               ` Torvald Riegel
2014-02-07 16:44                 ` Paul E. McKenney
2014-02-06 22:13         ` Joseph S. Myers
2014-02-06 23:25           ` Torvald Riegel
2014-02-06 23:33             ` Joseph S. Myers
2014-02-07 12:01         ` Will Deacon
2014-02-07 16:47           ` Paul E. McKenney
2014-02-06 19:21   ` Linus Torvalds
     [not found] ` <52F93B7C.2090304@tilera.com>
     [not found]   ` <20140210205719.GY5002@laptop.programming.kicks-ass.net>
2014-02-10 21:08     ` Chris Metcalf
2014-02-10 21:14       ` Peter Zijlstra
2014-02-18 12:12 Peter Sewell
2014-02-18 12:53 ` Peter Zijlstra
2014-02-18 16:08   ` Peter Sewell
2014-02-18 14:56 ` Paul E. McKenney
2014-02-18 15:16   ` Mark Batty
2014-02-18 17:17     ` Paul E. McKenney
2014-02-18 15:33   ` Peter Sewell
2014-02-18 16:47     ` Paul E. McKenney
2014-02-18 17:38 ` Linus Torvalds
2014-02-18 18:21   ` Peter Sewell
2014-02-18 18:49     ` Linus Torvalds
2014-02-18 19:47       ` Paul E. McKenney
2014-02-18 20:46     ` Torvald Riegel
2014-02-18 20:43 ` Torvald Riegel
2014-02-18 21:29   ` Paul E. McKenney
2014-02-18 23:48   ` Peter Sewell
2014-02-19  9:46     ` Torvald Riegel
2014-02-26  3:06 George Spelvin
2014-02-26  5:22 ` Paul E. McKenney

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