From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>
To: linux-ia64@vger.kernel.org
Subject: RE: Patch [2/2] relax per-cpu TLB requirement to DTC
Date: Fri, 13 Oct 2006 19:25:42 +0000 [thread overview]
Message-ID: <000401c6eefd$60b10bb0$ff0da8c0@amr.corp.intel.com> (raw)
In-Reply-To: <000201c6eeea$2b134940$ff0da8c0@amr.corp.intel.com>
Christoph Lameter wrote on Friday, October 13, 2006 11:54 AM
> On Fri, 13 Oct 2006, Chen, Kenneth W wrote:
>
> > - andcm r18=0x10,r18 // bit 4=~address-bit(61)
> > +(p10) sub r19=r19,r26
> > +(p10) mov cr.itir=r25
> > cmp.ne p8,p0=r0,r23
>
> This look somewhat familiar. Any chance that you could merge my mods to
> the alt_dtlb_miss handler? Both have to modify ITIR.
I suppose so.
> Also there may be a conflict since we both use high address bits?
Yes, there will be conflict, but easily fixable. My patch keys on PERCPU_ADDR,
which should have bits 16-63 set to one. An easy condition to check before
further decoding into variable page size.
There are a few details that your patch needs polishing in alt_dtlb_miss
handler: I don't think you would want to branch into dtlb_fault, because
there are no vhpt table in region7. Branching to dtlb_fault will dereference
a hashed address which will result a guaranteed nested_dtlb_miss fault,
And I think it is also dangerous to reference hashed vhpt address on region
7 address as your patch will fully utilize all the virtual address there.
Nonetheless, this double fault should be easy to optimize away.
I'm a bit uneasy about making nested_dtlb_miss now more frequently used
function. The code that walks the page table there isn't really as optimized
as vhpt_miss handler. We either optimize that or tap into vhpt_miss handler.
- Ken
next prev parent reply other threads:[~2006-10-13 19:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-13 17:08 Patch [2/2] relax per-cpu TLB requirement to DTC Chen, Kenneth W
2006-10-13 18:54 ` Christoph Lameter
2006-10-13 19:25 ` Chen, Kenneth W [this message]
2006-10-13 19:38 ` Christoph Lameter
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='000401c6eefd$60b10bb0$ff0da8c0@amr.corp.intel.com' \
--to=kenneth.w.chen@intel.com \
--cc=linux-ia64@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