mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "D.W.Howells" <dhowells@astarte.free-online.co.uk>
To: andrea@suse.de
Cc: linux-kernel@vger.kernel.org
Subject: Re: generic rwsem [Re: Alpha "process table hang"]
Date: Tue, 17 Apr 2001 20:18:57 +0100	[thread overview]
Message-ID: <01041720185700.01003@orion.ddi.co.uk> (raw)

Andrea,

> As said the design of the framework to plugin per-arch rwsem implementation 
> isn't flexible enough and the generic spinlocks are as well broken, try to 
> use them if you can (yes I tried that for the alpha, it was just a mess and 
> it was more productive to rewrite than to fix).

Having thought about the matter a bit, I know what the problem is:

As stated in the email with the latest patch, I haven't yet extended this to 
cover any architecture but i386. That patch was actually put up for comments, 
though it got included anyway.

Therefore, all other archs use the old (and probably) broken implementations!

I'll quickly knock up a patch to fix the other archs. This should also fix 
the alpha problem.

As for making the stuff I had done less generic, and more specific, I only 
made it more generic because I got asked to by a number of people. It was 
suggested that I move the contention functions into lib/rwsem.c and make them 
common.

As far as using atomic_add_return() goes, the C compiler cannot make the 
fastpath anywhere near as efficient, because amongst other things, I can make 
use of the condition flags set in EFLAGS and the compiler can't.

> And it's also more readable and it's not bloated code, 65+110 lines
> compared to 156+148+174 lines. 

You do my code an injustice there... I've put comments in mine.

David

             reply	other threads:[~2001-04-17 19:21 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-04-17 19:18 D.W.Howells [this message]
2001-04-17 20:49 ` Andrea Arcangeli
2001-04-17 21:29   ` Christoph Hellwig
2001-04-17 22:06     ` Andrea Arcangeli
  -- strict thread matches above, loose matches on Subject: below --
2001-04-17 23:54 D.W.Howells
2001-04-18 20:49 ` Andrea Arcangeli
2001-04-17 21:48 D.W.Howells
2001-04-17 23:06 ` Andrea Arcangeli
2001-04-11 17:57 Alpha "process table hang" Bob McElrath
     [not found] ` <E14nOzo-0007Ew-00@the-village.bc.nu>
2001-04-13 13:48   ` Bob McElrath
2001-04-17 15:07     ` generic rwsem [Re: Alpha "process table hang"] Andrea Arcangeli
2001-04-17 15:28       ` Bob McElrath
2001-04-19 16:21         ` Bob McElrath
2001-04-19 17:17           ` Andrea Arcangeli
2001-04-23 23:27             ` Bob McElrath
2001-04-23 23:40               ` Andrea Arcangeli
2001-04-17 15:45       ` Christoph Hellwig
2001-04-17 16:59       ` David Howells
2001-04-17 17:55         ` Andrea Arcangeli

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=01041720185700.01003@orion.ddi.co.uk \
    --to=dhowells@astarte.free-online.co.uk \
    --cc=andrea@suse.de \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®