All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: Luca Barbieri <luca@luca-barbieri.com>,
	Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>,
	a.p.zijlstra@chello.nl, akpm@linux-foundation.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 0/5] x86-32: improve atomic64_t functions (v2)
Date: Sun, 28 Feb 2010 23:35:31 -0800	[thread overview]
Message-ID: <4B8B6E43.9030305@zytor.com> (raw)
In-Reply-To: <ff13bc9a1002260323k6b3f38ah4f0505e401dcf77d@mail.gmail.com>

On 02/26/2010 03:23 AM, Luca Barbieri wrote:
> Sent patches, both to conditionally perform the test and implement the
> functions for x86 and x86-64.

Yes, and with the test turned on, the kernel crashes immediately on boot
on x86-64.

Some minor investigation reveals the following:

lib/atomic64.c has the wrong return value for atomic64_add_unless().
With "wrong" I mean it is the opposite sense compared to
atomic_add_unless(), not just on x86 but on all architectures.

Accordingly, I have to conclude that lib/atomic64.c is buggy, and that
since your test matches that bug, I will have to conclude that your
x86-32 implementation is also buggy.  Thus, please send patches to fix
your test and your 32-bit implementations (and preferrably
lib/atomic64.c too, but I can do that just fine.)

Cc: Paul Mackerras who did the generic atomic64_t implementation for
verification that this is indeed a bug.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.


  reply	other threads:[~2010-03-01  7:35 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
2010-03-01  8:49             ` Paul Mackerras
2010-03-01 17:16             ` Luca Barbieri
2010-03-01 17:31               ` Luca Barbieri

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=4B8B6E43.9030305@zytor.com \
    --to=hpa@zytor.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luca@luca-barbieri.com \
    --cc=mingo@elte.hu \
    --cc=paulus@samba.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.