public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] x86-32: improve atomic64_t functions (v2)
@ 2010-02-19 17:26 Luca Barbieri
  2010-02-19 17:26 ` [PATCH 1/5] x86: add support for relative CALL and JMP in alternatives (v2) Luca Barbieri
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Luca Barbieri @ 2010-02-19 17:26 UTC (permalink / raw)
  To: mingo; +Cc: hpa, a.p.zijlstra, akpm, linux-kernel, Luca Barbieri

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 patches add 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] 15+ messages in thread

end of thread, other threads:[~2010-03-01 17:31 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-19 17:26 [PATCH 0/5] x86-32: improve atomic64_t functions (v2) Luca Barbieri
2010-02-19 17:26 ` [PATCH 1/5] x86: add support for relative CALL and JMP in alternatives (v2) Luca Barbieri
2010-02-19 17:26 ` [PATCH 2/5] x86: add support for lock prefix " Luca Barbieri
2010-02-19 17:26 ` [PATCH 3/5] x86-32: allow UP/SMP lock replacement in cmpxchg64 (v2) Luca Barbieri
2010-02-19 17:26 ` [PATCH 4/5] lib: add self-test for atomic64_t Luca Barbieri
2010-02-19 17:26 ` [PATCH 5/5] x86-32: rewrite 32-bit atomic64 functions in assembly (v2) Luca Barbieri
2010-02-23 22:47 ` [PATCH 0/5] x86-32: improve atomic64_t functions (v2) H. Peter Anvin
2010-02-24  9:56   ` Luca Barbieri
2010-02-26 10:14     ` Ingo Molnar
2010-02-26 11:08       ` Luca Barbieri
2010-02-26 11:23         ` Luca Barbieri
2010-03-01  7:35           ` H. Peter Anvin
2010-03-01  8:49             ` Paul Mackerras
2010-03-01 17:16             ` Luca Barbieri
2010-03-01 17:31               ` Luca Barbieri

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