Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: pbonzini@redhat.com (Paolo Bonzini)
Subject: [ltt-dev] [PATCH 00/12] provide default definition of uatomic builtins
Date: Mon, 15 Feb 2010 20:04:33 +0100	[thread overview]
Message-ID: <1266260686-17588-1-git-send-email-pbonzini@redhat.com> (raw)

So here we go with v2.  Changes are:

- tests/api.h also symlinked

- uatomic_gcc.h renamed to uatomic_defaults.h as even architectures
  that don't want __sync_* builtins use it

- improved comments about mc/rmc/wmc in urcu/arch_defaults.h

- changed BITS_PER_LONG patch since __SIZEOF_LONG__ was newer than I
  thought, placed this patch at the end so you can omit it easily
  if NACKed (requires GCC 3.4 on 64-bit systems, nothing on 32-bit)

- added back assembly code for PPC and S390 so that those platforms
  do not need __sync_* builtins (SPARC and x86 didn't already in v1)

- added implementation of uatomic_exchange using __sync_bool_compare_and_swap
  (same trick S390 is using in the assembly implementation)

- patch 11 is new

As in v1, the last patch is not to be committed.  In the next days/week,
I'll try to build it on more machines and using old GCCs, but I cannot
promise anything right now...

Paolo Bonzini (12):
  use kernel style makefile output
  use autoconf symbolic linking
  add urcu/arch_defaults.h
  define sync_core for x86 PIC
  remove compat_uatomic_cmpxchg #define from non-x86
  add uatomic_defaults.h, use it for default definitions
  use uatomic_defaults.h for common fallback implementations
  move whether atomic byte/short exists to uatomic_arch_*.h
  add Alpha support
  support compiling on unknown architectures
  avoid multiple evaluation of STORE_SHARED argument
  centralize definition of BITS_PER_LONG
  test uatomic_defaults.h

 Makefile.am                 |   15 +--
 configure.ac                |   24 +++-
 tests/Makefile.am           |   12 --
 tests/test_uatomic.c        |   13 +--
 urcu/arch_alpha.h           |   48 ++++++
 urcu/arch_defaults.h        |  132 ++++++++++++++++
 urcu/arch_ppc.h             |   54 +------
 urcu/arch_s390.h            |   50 +------
 urcu/arch_sparc64.h         |   55 +-------
 urcu/arch_x86.h             |   68 ++-------
 urcu/compiler.h             |    8 +
 urcu/system.h               |    4 +-
 urcu/uatomic_arch_alpha.h   |   32 ++++
 urcu/uatomic_arch_ppc.h     |   29 +----
 urcu/uatomic_arch_s390.h    |   71 +---------
 urcu/uatomic_arch_sparc64.h |  112 +-------------
 urcu/uatomic_arch_x86.h     |   41 ++----
 urcu/uatomic_defaults.h     |  354 +++++++++++++++++++++++++++++++++++++++++++
 18 files changed, 634 insertions(+), 488 deletions(-)





             reply	other threads:[~2010-02-15 19:04 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-15 19:04 Paolo Bonzini [this message]
2010-02-15 19:04 ` [ltt-dev] [PATCH 01/12] use kernel style makefile output Paolo Bonzini
2010-02-15 19:04 ` [ltt-dev] [PATCH 02/12] use autoconf symbolic linking Paolo Bonzini
2010-02-15 19:04 ` [ltt-dev] [PATCH 03/12] add urcu/arch_defaults.h Paolo Bonzini
2010-02-18  2:57   ` Mathieu Desnoyers
2010-02-15 19:04 ` [ltt-dev] [PATCH 04/12] define sync_core for x86 PIC Paolo Bonzini
2010-02-15 19:04 ` [ltt-dev] [PATCH 05/12] remove compat_uatomic_cmpxchg #define from non-x86 Paolo Bonzini
2010-02-15 19:04 ` [ltt-dev] [PATCH 06/12] add uatomic_defaults.h, use it for default definitions Paolo Bonzini
2010-02-18  3:10   ` Mathieu Desnoyers
2010-02-15 19:04 ` [ltt-dev] [PATCH 07/12] use uatomic_defaults.h for common fallback implementations Paolo Bonzini
2010-02-15 19:04 ` [ltt-dev] [PATCH 08/12] move whether atomic byte/short exists to uatomic_arch_*.h Paolo Bonzini
2010-02-18  3:12   ` Mathieu Desnoyers
2010-02-15 19:04 ` [ltt-dev] [PATCH 09/12] add Alpha support Paolo Bonzini
2010-02-18  3:21   ` Mathieu Desnoyers
2010-02-15 19:04 ` [ltt-dev] [PATCH 10/12] support compiling on unknown architectures Paolo Bonzini
2010-02-18  3:22   ` Mathieu Desnoyers
2010-02-15 19:04 ` [ltt-dev] [PATCH 11/12] avoid multiple evaluation of STORE_SHARED argument Paolo Bonzini
2010-02-18  3:28   ` Mathieu Desnoyers
2010-02-18  8:45     ` Paolo Bonzini
2010-02-15 19:04 ` [ltt-dev] [PATCH 12/12] centralize definition of BITS_PER_LONG Paolo Bonzini
2010-02-18  3:25   ` Mathieu Desnoyers
2010-02-18  8:45     ` Paolo Bonzini
2010-02-18 13:46       ` Mathieu Desnoyers
2010-02-18 15:27         ` Paolo Bonzini
2010-02-18 16:09           ` Mathieu Desnoyers
2010-02-19 19:25             ` [ltt-dev] lock-free data structures (was Re: [PATCH 12/12] centralize definition of BITS_PER_LONG) Paolo Bonzini
2010-02-19 23:51               ` Paul E. McKenney
2010-02-20  0:10                 ` Paolo Bonzini
2010-02-20  0:44                   ` Paul E. McKenney
2010-02-15 19:04 ` [ltt-dev] [PATCH 13/12] test uatomic_defaults.h Paolo Bonzini

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=1266260686-17588-1-git-send-email-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox