From: Zoltan Menyhart <Zoltan.Menyhart_AT_bull.net@nospam.org>
To: "Luck, Tony" <tony.luck@intel.com>
Cc: Zoltan.Menyhart@bull.net, linux-ia64@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: Who owns those locks ?
Date: Wed, 12 May 2004 11:06:51 +0000 [thread overview]
Message-ID: <40A2054B.21EDE518@nospam.org> (raw)
In-Reply-To: B8E391BBE9FE384DAA4C5C003888BE6F013CCAED@scsmsx401.sc.intel.com
"Luck, Tony" wrote:
>
> >The current task pointers are identity mapped memory addresses.
> >I shift them to the right by 12 bits (these bits are always 0-s).
> >In that way, addresses up to 16 Tbytes can fit into the lock word.
>
> Neat trick. Will work for most people ... but watch out if you
> have an architecture that has sparse physical address space and
> can thus potentially allocate a task structure on a 16TB boundary.
>
> At first I thought SGI Altix could be hurt by this, but they are
> saved by the fact that bits [37:36] are always set to one.
>
> I know of at least one 1TB machine now, so 16TB machines are only
> a few years away. You could stretch the life of this patch by
> using PAGE_SHIFT, rather than 12 (as practically nobody builds
> kernels with a 4k pagesize, especially not on monster machines).
>
> Or perhaps just fix the allocation of task structures to skip
> around the 16TB aligned ones?
>
> -Tony
The first reason to use a shift of 12 bits is:
you can see easily what the address of the owner's task structure is.
In addition, with page size of 16 Kbytes, you've got only 16 Tbytes
in the identity mapped kernel address space any way.
Should we move to a page size of 64 Kbytes, you can use a shift of
16 bits and you keep the address human readable ;-)
Thanks,
Zoltán
next prev parent reply other threads:[~2004-05-12 11:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-12 9:56 Who owns those locks ? Zoltan Menyhart
2004-05-12 10:25 ` Luck, Tony
2004-05-12 11:06 ` Zoltan Menyhart [this message]
2004-05-12 11:43 ` Luck, Tony
2004-05-13 18:43 ` Anton Blanchard
2004-06-03 17:39 ` Bjorn Helgaas
2004-06-07 8:58 ` Zoltan Menyhart
2004-06-07 15:06 ` Bjorn Helgaas
2004-06-08 8:03 ` Zoltan Menyhart
2004-06-08 15:05 ` Bjorn Helgaas
2004-06-08 15:38 ` Zoltan Menyhart
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=40A2054B.21EDE518@nospam.org \
--to=zoltan.menyhart_at_bull.net@nospam.org \
--cc=Zoltan.Menyhart@bull.net \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tony.luck@intel.com \
/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