From: Andrew Morton <andrewm@uow.edu.au>
To: Andrea Arcangeli <andrea@suse.de>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>, linux-kernel@vger.kernel.org
Subject: Re: Linux 2.2.19pre2
Date: Thu, 21 Dec 2000 21:38:43 +1100 [thread overview]
Message-ID: <3A41DDB3.7E38AC7@uow.edu.au> (raw)
In-Reply-To: <E147MkJ-00036t-00@the-village.bc.nu>, <E147MkJ-00036t-00@the-village.bc.nu>; <20001220142858.A7381@athlon.random> <3A40C8CB.D063E337@uow.edu.au>, <3A40C8CB.D063E337@uow.edu.au>; from andrewm@uow.edu.au on Thu, Dec 21, 2000 at 01:57:15AM +1100 <20001220162456.G7381@athlon.random>
Andrea Arcangeli wrote:
>
> The fact you could mix non-exclusive and exlusive wakeups in the same waitqueue
> was a feature not a misfeature. Then of course you cannot register in two
> waitqueues one with wake-one and one with wake-all but who does that anyways?
> Definitely not an issue for 2.2.x.
Definitely? Let's think about that.
> I think the real reason for spearating the two things as davem proposed is
> because otherwise we cannot register for a LIFO wake-one in O(1) as we needed
> for accept.
Yes. In other words, if we try to do O(1) LIFO, we can cause lost wakeups.
> Other thing about your patch, adding TASK_EXCLUSIVE to
> wake_up/wake_up_interruptible is useless.
This enables wake_up_all().
Anyway, this is all just noise.
The key question is: which of the following do we want?
a) A simple, specific accept()-accelerator, and 2.2 remains without
an exclusive wq API or
b) A general purpose exclusive wq mechanism which does not correctly
support waiting on two queues simultaneuously where one is
exclusive or
c) A general purpose exclusive wq mechanism which _does_ support it.
Each choice has merit! You seem to want b). davem wants c).
And given that 2.2 has maybe 2-4 years life left in it, I'd
agree with David. Let's do it once and do it right while the issue
is fresh in our minds.
Yes?
-
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2000-12-21 11:06 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-12-16 19:11 Linux 2.2.19pre2 Alan Cox
2000-12-17 10:56 ` Petri Kaukasoina
2000-12-17 15:38 ` Kurt Garloff
2000-12-20 10:32 ` Petri Kaukasoina
2000-12-20 10:44 ` Kurt Garloff
2000-12-20 13:28 ` Andrea Arcangeli
2000-12-20 14:57 ` Andrew Morton
2000-12-20 15:24 ` Andrea Arcangeli
2000-12-20 17:48 ` Rik van Riel
2000-12-20 18:09 ` Andrea Arcangeli
2000-12-21 10:38 ` Andrew Morton [this message]
2000-12-21 15:19 ` Andrea Arcangeli
2000-12-21 17:07 ` Rik van Riel
2000-12-21 17:44 ` Andrea Arcangeli
2000-12-21 17:55 ` Rik van Riel
2000-12-22 7:33 ` Andrew Morton
2000-12-22 13:19 ` Andrea Arcangeli
2000-12-23 6:56 ` Andrew Morton
2000-12-23 18:11 ` Andrea Arcangeli
2000-12-24 0:23 ` Andrew Morton
2000-12-24 0:53 ` Andrea Arcangeli
2000-12-24 2:28 ` Andrew Morton
2000-12-24 4:21 ` Andrea Arcangeli
2000-12-24 5:17 ` Andrew Morton
2000-12-24 14:43 ` Andrea Arcangeli
2000-12-24 15:40 ` Andrea Arcangeli
2000-12-29 17:09 ` wake-one-3 bug (affected 2.2.19pre3aa[123]) Andrea Arcangeli
2000-12-21 20:23 ` Linux 2.2.19pre2 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=3A41DDB3.7E38AC7@uow.edu.au \
--to=andrewm@uow.edu.au \
--cc=alan@lxorguk.ukuu.org.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