All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Christoph Lameter <clameter@sgi.com>
Cc: Zoltan Menyhart <Zoltan.Menyhart@bull.net>,
	"Boehm, Hans" <hans.boehm@hp.com>,
	"Grundler, Grant G" <grant.grundler@hp.com>,
	"Chen, Kenneth W" <kenneth.w.chen@intel.com>,
	akpm@osdl.org, linux-kernel@vger.kernel.org,
	linux-ia64@vger.kernel.org
Subject: Re: Synchronizing Bit operations V2
Date: Fri, 31 Mar 2006 00:44:01 +0000	[thread overview]
Message-ID: <442C7B51.1060203@yahoo.com.au> (raw)
In-Reply-To: <Pine.LNX.4.64.0603301615540.2023@schroedinger.engr.sgi.com>

Christoph Lameter wrote:
> Changelog:
> 
> V2
> 	- Fix various oversights
> 	- Follow Hans Boehm's scheme for the barrier logic
> 
> The following patchset implements the ability to specify a
> synchronization mode for bit operations.
> 
> I.e. instead of set_bit(x,y) we can do set_bit(x,y, mode).
> 
> The following modes are supported:
> 

This has acquire and release, instead of the generic kernel
memory barriers rmb and wmb. As such, I don't think it would
get merged.

> Note that the current semantics for bitops IA64 are broken. Both
> smp_mb__after/before_clear_bit are now set to full memory barriers
> to compensate which may affect performance.

I think you should fight the fights you can win and get a 90%
solution ;) at any rate you do need to fix the existing routines
unless you plan to audit all callers...

First, fix up ia64 in 2.6-head, this means fixing test_and_set_bit
and friends, smp_mb__*_clear_bit, and all the atomic operations that
both modify and return a value.

Then add test_and_set_bit_lock / clear_bit_unlock, and apply them
to a couple of critical places like page lock and buffer lock.

Is this being planned?

-- 
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com 

WARNING: multiple messages have this Message-ID (diff)
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Christoph Lameter <clameter@sgi.com>
Cc: Zoltan Menyhart <Zoltan.Menyhart@bull.net>,
	"Boehm, Hans" <hans.boehm@hp.com>,
	"Grundler, Grant G" <grant.grundler@hp.com>,
	"Chen, Kenneth W" <kenneth.w.chen@intel.com>,
	akpm@osdl.org, linux-kernel@vger.kernel.org,
	linux-ia64@vger.kernel.org
Subject: Re: Synchronizing Bit operations V2
Date: Fri, 31 Mar 2006 10:44:01 +1000	[thread overview]
Message-ID: <442C7B51.1060203@yahoo.com.au> (raw)
In-Reply-To: <Pine.LNX.4.64.0603301615540.2023@schroedinger.engr.sgi.com>

Christoph Lameter wrote:
> Changelog:
> 
> V2
> 	- Fix various oversights
> 	- Follow Hans Boehm's scheme for the barrier logic
> 
> The following patchset implements the ability to specify a
> synchronization mode for bit operations.
> 
> I.e. instead of set_bit(x,y) we can do set_bit(x,y, mode).
> 
> The following modes are supported:
> 

This has acquire and release, instead of the generic kernel
memory barriers rmb and wmb. As such, I don't think it would
get merged.

> Note that the current semantics for bitops IA64 are broken. Both
> smp_mb__after/before_clear_bit are now set to full memory barriers
> to compensate which may affect performance.

I think you should fight the fights you can win and get a 90%
solution ;) at any rate you do need to fix the existing routines
unless you plan to audit all callers...

First, fix up ia64 in 2.6-head, this means fixing test_and_set_bit
and friends, smp_mb__*_clear_bit, and all the atomic operations that
both modify and return a value.

Then add test_and_set_bit_lock / clear_bit_unlock, and apply them
to a couple of critical places like page lock and buffer lock.

Is this being planned?

-- 
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com 

  parent reply	other threads:[~2006-03-31  0:44 UTC|newest]

Thread overview: 124+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-30 21:02 Bit operations with the ability to specify a synchronization mode Christoph Lameter
2006-03-30 21:02 ` Christoph Lameter
2006-03-31  0:18 ` Synchronizing Bit operations V2 Christoph Lameter
2006-03-31  0:18   ` Christoph Lameter
2006-03-31  0:39   ` Chen, Kenneth W
2006-03-31  0:39     ` Chen, Kenneth W
2006-03-31  0:42     ` Christoph Lameter
2006-03-31  0:42       ` Christoph Lameter
2006-03-31  0:45     ` Christoph Lameter
2006-03-31  0:45       ` Christoph Lameter
2006-03-31  0:42   ` David Mosberger-Tang
2006-03-31  0:42     ` David Mosberger-Tang
2006-03-31  0:49     ` Christoph Lameter
2006-03-31  0:49       ` Christoph Lameter
2006-03-31  6:10     ` Chris Wright
2006-03-31  6:10       ` Chris Wright
2006-03-31  0:44   ` Nick Piggin [this message]
2006-03-31  0:44     ` Nick Piggin
2006-03-31  3:28     ` Christoph Lameter
2006-03-31  3:28       ` Christoph Lameter
2006-03-31  4:12       ` Nick Piggin
2006-03-31  4:12         ` Nick Piggin
2006-03-31 17:43         ` Christoph Lameter
2006-03-31 17:43           ` Christoph Lameter
2006-04-01  2:56           ` Nick Piggin
2006-04-01  2:56             ` Nick Piggin
2006-03-31  0:50   ` Chen, Kenneth W
2006-03-31  0:50     ` Chen, Kenneth W
2006-03-31  0:51     ` Christoph Lameter
2006-03-31  0:51       ` Christoph Lameter
2006-03-31  0:53   ` Chen, Kenneth W
2006-03-31  0:53     ` Chen, Kenneth W
2006-03-31  0:55     ` Christoph Lameter
2006-03-31  0:55       ` Christoph Lameter
2006-03-31  0:56   ` Luck, Tony
2006-03-31  0:56     ` Luck, Tony
2006-03-31  0:58     ` Christoph Lameter
2006-03-31  0:58       ` Christoph Lameter
2006-04-02  7:59       ` Russell King
2006-04-02  7:59         ` Russell King
2006-03-31  0:59   ` Chen, Kenneth W
2006-03-31  0:59     ` Chen, Kenneth W
2006-03-31  1:09     ` Christoph Lameter
2006-03-31  1:09       ` Christoph Lameter
2006-03-31  1:04   ` Chen, Kenneth W
2006-03-31  1:04     ` Chen, Kenneth W
2006-03-31  1:13     ` Christoph Lameter
2006-03-31  1:13       ` Christoph Lameter
2006-03-31  1:13   ` Chen, Kenneth W
2006-03-31  1:13     ` Chen, Kenneth W
2006-03-31  1:29   ` Chen, Kenneth W
2006-03-31  1:29     ` Chen, Kenneth W
2006-03-31  1:37     ` Christoph Lameter
2006-03-31  1:37       ` Christoph Lameter
2006-03-31  1:33   ` linux
2006-03-31  1:33     ` linux
2006-03-31  1:40     ` Christoph Lameter
2006-03-31  1:40       ` Christoph Lameter
2006-03-31  2:35   ` Chen, Kenneth W
2006-03-31  2:35     ` Chen, Kenneth W
2006-03-31  2:37     ` Christoph Lameter
2006-03-31  2:37       ` Christoph Lameter
2006-03-31  2:45   ` Chen, Kenneth W
2006-03-31  2:45     ` Chen, Kenneth W
2006-03-31  2:53     ` Nick Piggin
2006-03-31  2:53       ` Nick Piggin
2006-03-31  3:01     ` Christoph Lameter
2006-03-31  3:01       ` Christoph Lameter
2006-03-31  2:51   ` Chen, Kenneth W
2006-03-31  2:51     ` Chen, Kenneth W
2006-03-31  2:55     ` Christoph Lameter
2006-03-31  2:55       ` Christoph Lameter
2006-03-31  3:02   ` Chen, Kenneth W
2006-03-31  3:02     ` Chen, Kenneth W
2006-03-31  3:08     ` Christoph Lameter
2006-03-31  3:08       ` Christoph Lameter
2006-03-31  3:10   ` Chen, Kenneth W
2006-03-31  3:10     ` Chen, Kenneth W
2006-03-31  3:12     ` Christoph Lameter
2006-03-31  3:12       ` Christoph Lameter
2006-03-31  3:11   ` Chen, Kenneth W
2006-03-31  3:11     ` Chen, Kenneth W
2006-03-31  3:14   ` Chen, Kenneth W
2006-03-31  3:14     ` Chen, Kenneth W
2006-03-31  3:20     ` Christoph Lameter
2006-03-31  3:20       ` Christoph Lameter
2006-03-31  3:17   ` Chen, Kenneth W
2006-03-31  3:17     ` Chen, Kenneth W
2006-03-31  3:23   ` Chen, Kenneth W
2006-03-31  3:23     ` Chen, Kenneth W
2006-03-31  3:37   ` Chen, Kenneth W
2006-03-31  3:37     ` Chen, Kenneth W
2006-03-31  6:15   ` Chen, Kenneth W
2006-03-31  6:15     ` Chen, Kenneth W
2006-03-31  7:34     ` Nick Piggin
2006-03-31  7:34       ` Nick Piggin
2006-03-31 13:28   ` Andi Kleen
2006-03-31 13:28     ` Andi Kleen
2006-03-31 16:22     ` Hans Boehm
2006-03-31 16:22       ` Hans Boehm
2006-03-31 16:37       ` Andi Kleen
2006-03-31 16:37         ` Andi Kleen
2006-03-31 17:46         ` Christoph Lameter
2006-03-31 17:46           ` Christoph Lameter
2006-03-31 17:45     ` Christoph Lameter
2006-03-31 17:45       ` Christoph Lameter
2006-03-31 17:48       ` Andi Kleen
2006-03-31 17:48         ` Andi Kleen
2006-03-31 17:56         ` Christoph Lameter
2006-03-31 17:56           ` Christoph Lameter
2006-04-02  7:54           ` Russell King
2006-04-02  7:54             ` Russell King
2006-03-31 18:57   ` Chen, Kenneth W
2006-03-31 18:57     ` Chen, Kenneth W
2006-03-31 19:41   ` Chen, Kenneth W
2006-03-31 19:41     ` Chen, Kenneth W
2006-03-31 21:15     ` Christoph Lameter
2006-03-31 21:15       ` Christoph Lameter
2006-03-31 21:24   ` Chen, Kenneth W
2006-03-31 21:24     ` Chen, Kenneth W
2006-03-31 21:28     ` Christoph Lameter
2006-03-31 21:28       ` Christoph Lameter
2006-04-01  2:16       ` Nick Piggin
2006-04-01  2:16         ` Nick Piggin

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=442C7B51.1060203@yahoo.com.au \
    --to=nickpiggin@yahoo.com.au \
    --cc=Zoltan.Menyhart@bull.net \
    --cc=akpm@osdl.org \
    --cc=clameter@sgi.com \
    --cc=grant.grundler@hp.com \
    --cc=hans.boehm@hp.com \
    --cc=kenneth.w.chen@intel.com \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.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.