public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] x86-32: improve atomic64_t functions (v3, for tip/x86/asm)
@ 2010-02-24  9:54 Luca Barbieri
  2010-02-24  9:54 ` [PATCH 1/4] x86: add support for lock prefix in alternatives (v2) Luca Barbieri
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Luca Barbieri @ 2010-02-24  9:54 UTC (permalink / raw)
  To: hpa; +Cc: mingo, a.p.zijlstra, akpm, linux-kernel, Luca Barbieri

Changes in v3:
- Dropped alternatives CALL patch because tip/x86/asm already had that
  functionality
- Patch atomic64_32.h instead of atomic_32.h

Changes in v2:
- 386/486 is supported with a custom assembly implementation, the generic
  implementation is no longer used/modified
- dropped SSE code
- changed CALL alternative code to use a custom alternative type:
  insn parser no longer used
- several implementation improvements
- several formatting/style improvements
- merged 386 support into main patch

This patchset improves the atomic64_t functions on x86-32.
It also includes a testsuite that has been used to test this functionality
and can test any atomic64_t implementation.

It offers the following improvements:
1. Better code due to hand-written assembly (e.g. use of the ZF flag)
2. All atomic64 functions implemented
3. Support for 386/486 due to the ability to alternatively use either
   the cmpxchg8b assembly implementation or the 386 cli/popf assembly one

The first patch adds functionality to the alternatives system to support
the new atomic64_t code.
A patch that improves cmpxchg64() using that functionality is also included.

To test this code, enable CONFIG_ATOMIC64_SELFTEST, compile for 386 and
boot normally and with "clearcpuid=8".

You should receive a message stating that the atomic64 test passed,
along with the selected configuration.

386/486 SMP is not supported, following existing practice, but the code
is structured to allow to very easily add such support.

Signed-off-by: Luca Barbieri <luca@luca-barbieri.com>

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

end of thread, other threads:[~2010-04-30 17:06 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-24  9:54 [PATCH 0/4] x86-32: improve atomic64_t functions (v3, for tip/x86/asm) Luca Barbieri
2010-02-24  9:54 ` [PATCH 1/4] x86: add support for lock prefix in alternatives (v2) Luca Barbieri
2010-02-26  5:12   ` [tip:x86/atomic] x86: Add support for lock prefix in alternatives tip-bot for Luca Barbieri
2010-04-29 23:24   ` [tip:x86/atomic] x86: Fix LOCK_PREFIX_HERE for uniprocessor build tip-bot for H. Peter Anvin
2010-02-24  9:54 ` [PATCH 2/4] x86-32: allow UP/SMP lock replacement in cmpxchg64 (v2) Luca Barbieri
2010-02-26  5:12   ` [tip:x86/atomic] x86-32: Allow UP/SMP lock replacement in cmpxchg64 tip-bot for Luca Barbieri
2010-02-24  9:54 ` [PATCH 3/4] lib: add self-test for atomic64_t Luca Barbieri
2010-02-26  5:13   ` [tip:x86/atomic] lib: Add " tip-bot for Luca Barbieri
2010-03-01 19:59   ` [tip:x86/atomic] x86, atomic64: In selftest, distinguish x86-64 from 586+ tip-bot for H. Peter Anvin
2010-02-24  9:54 ` [PATCH 4/4] x86-32: rewrite 32-bit atomic64 functions in assembly (v3) Luca Barbieri
2010-02-26  5:13   ` [tip:x86/atomic] x86-32: Rewrite 32-bit atomic64 functions in assembly tip-bot for Luca Barbieri

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox