From: Muli Ben-Yehuda <mulix@mulix.org>
To: Arjan van de Ven <arjanv@redhat.com>
Cc: Andrew Morton <akpm@osdl.org>, Ingo Molnar <mingo@redhat.com>,
rusty@rustcorp.com.au, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] Futex non-page-pinning fix
Date: Tue, 26 Aug 2003 11:08:00 +0300 [thread overview]
Message-ID: <20030826080759.GK13390@actcom.co.il> (raw)
In-Reply-To: <1061884611.2982.4.camel@laptop.fenrus.com>
[-- Attachment #1: Type: text/plain, Size: 979 bytes --]
On Tue, Aug 26, 2003 at 09:56:51AM +0200, Arjan van de Ven wrote:
> On Tue, 2003-08-26 at 09:02, Andrew Morton wrote:
>
> > umm, how about hashing only on offset into page? That reduces the number of
> > threads which need to be visited in futex_wake() by a factor of up to 1024.
>
> How likely do you consider it that we then get a major collision?
> I wouldn't be surprised if, say, glibc lays some hot futexes out in a
> way that's the same for all processes in the system, like start of the
> page.... Might as well not hash :)
How about combining something that's shared to all of the threads that
share a futex but not system wide (the mm?) with something simple that
won't change, like the page offset? Adding the mm into the mix wil
make collisions harder, and limiting the buckets to the number of
different futex offsets will make it simple and differentiate between
different futexes in the same mm.
--
Muli Ben-Yehuda
http://www.mulix.org
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2003-08-26 8:08 UTC|newest]
Thread overview: 102+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-08-26 3:12 [PATCH 2/2] Futex non-page-pinning fix Rusty Russell
2003-08-26 4:06 ` Andrew Morton
2003-08-26 5:30 ` Ingo Molnar
2003-08-26 5:50 ` Andrew Morton
2003-08-26 5:58 ` Ingo Molnar
2003-08-26 6:14 ` Andrew Morton
2003-08-26 6:36 ` Ingo Molnar
2003-08-26 7:02 ` Andrew Morton
2003-08-26 7:56 ` Arjan van de Ven
2003-08-26 8:08 ` Muli Ben-Yehuda [this message]
2003-08-26 8:11 ` Arjan van de Ven
2003-08-26 8:25 ` Andrew Morton
2003-08-26 9:02 ` Muli Ben-Yehuda
2003-08-26 10:38 ` William Lee Irwin III
2003-08-26 10:44 ` Andrew Morton
2003-08-26 10:45 ` William Lee Irwin III
2003-08-26 17:29 ` Andrew Morton
2003-08-26 19:35 ` William Lee Irwin III
2003-08-27 5:17 ` Rusty Russell
2003-08-27 6:20 ` Andrew Morton
2003-08-28 0:47 ` Rusty Russell
2003-08-28 8:21 ` Andrew Morton
2003-08-29 3:46 ` Rusty Russell
2003-08-29 4:17 ` Andrew Morton
2003-08-30 7:49 ` Rusty Russell
2003-09-01 0:35 ` Jamie Lokier
2003-09-01 4:11 ` Rusty Russell
2003-09-01 20:57 ` Hugh Dickins
2003-09-02 3:12 ` Rusty Russell
2003-09-02 6:51 ` Jamie Lokier
2003-09-02 16:14 ` Hugh Dickins
2003-09-02 19:54 ` Jamie Lokier
2003-09-02 20:15 ` Andrew Morton
2003-09-02 21:20 ` Jamie Lokier
2003-09-03 2:40 ` Rusty Russell
2003-09-03 7:36 ` [PATCH] Alternate futex non-page-pinning and COW fix Jamie Lokier
2003-09-03 11:19 ` Hugh Dickins
2003-09-03 14:38 ` Jamie Lokier
2003-09-03 17:39 ` Jamie Lokier
2003-09-03 17:55 ` Linus Torvalds
2003-09-03 18:06 ` Hugh Dickins
2003-09-03 18:19 ` Linus Torvalds
2003-09-03 18:43 ` Hugh Dickins
2003-09-03 19:05 ` Linus Torvalds
2003-09-03 19:40 ` Hugh Dickins
2003-09-03 20:04 ` Linus Torvalds
2003-09-04 2:43 ` Rusty Russell
2003-09-04 8:28 ` Linus Torvalds
2003-09-04 12:20 ` Hugh Dickins
2003-09-04 15:40 ` Linus Torvalds
2003-09-04 16:55 ` Hugh Dickins
2003-09-04 18:38 ` Jamie Lokier
2003-09-04 18:46 ` Linus Torvalds
2003-09-04 20:04 ` Jamie Lokier
2003-09-04 21:49 ` Linus Torvalds
2003-09-04 22:10 ` Jamie Lokier
2003-09-04 17:16 ` Jamie Lokier
2003-09-04 17:38 ` Linus Torvalds
2003-09-04 18:42 ` Linus Torvalds
2003-09-04 18:42 ` Linus Torvalds
2003-09-05 3:55 ` Rusty Russell
2003-09-05 17:55 ` Jamie Lokier
2003-09-04 17:26 ` Jamie Lokier
2003-09-04 1:30 ` Rusty Russell
2003-09-04 21:00 ` Jamie Lokier
2003-09-05 5:19 ` Rusty Russell
2003-09-05 20:54 ` Jamie Lokier
2003-09-07 6:45 ` Rusty Russell
2003-09-07 13:20 ` Jamie Lokier
2003-09-08 1:49 ` Rusty Russell
2003-09-08 9:44 ` Jamie Lokier
2003-09-03 14:40 ` [PATCH 2] Little fixes to previous futex patch Jamie Lokier
2003-09-04 16:45 ` Hugh Dickins
2003-09-04 17:59 ` Jamie Lokier
2003-09-04 18:35 ` Hugh Dickins
2003-09-04 20:11 ` Jamie Lokier
2003-09-04 21:36 ` Hugh Dickins
2003-09-04 21:58 ` Jamie Lokier
2003-09-07 7:23 ` Ingo Molnar
2003-09-07 12:27 ` Hugh Dickins
2003-09-07 15:03 ` Jamie Lokier
2003-09-08 1:56 ` Rusty Russell
2003-09-07 13:00 ` Jamie Lokier
2003-09-08 3:32 ` Ingo Molnar
2003-09-08 9:33 ` Jamie Lokier
2003-09-08 9:57 ` Ingo Molnar
2003-09-05 4:56 ` Rusty Russell
2003-09-03 15:34 ` [PATCH] Alternate futex non-page-pinning and COW fix Andrew Morton
2003-09-03 17:16 ` Jamie Lokier
2003-09-04 1:35 ` Rusty Russell
2003-09-04 17:35 ` Jamie Lokier
2003-09-03 0:14 ` [PATCH 2/2] Futex non-page-pinning fix Rusty Russell
2003-09-03 1:16 ` Andrew Morton
2003-09-03 1:54 ` Dave Hansen
2003-09-03 2:54 ` Andrew Morton
2003-09-02 3:23 ` Hugh Dickins
2003-09-02 23:58 ` Rusty Russell
2003-08-27 8:37 ` Hugh Dickins
2003-08-27 8:56 ` William Lee Irwin III
2003-08-27 10:38 ` Andrew Morton
2003-08-27 10:57 ` Hugh Dickins
2003-08-28 8:03 ` Rusty Russell
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=20030826080759.GK13390@actcom.co.il \
--to=mulix@mulix.org \
--cc=akpm@osdl.org \
--cc=arjanv@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=rusty@rustcorp.com.au \
/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