From: John David Anglin <dave.anglin@bell.net>
To: Helge Deller <deller@gmx.de>,
linux-parisc@vger.kernel.org,
James Bottomley <James.Bottomley@hansenpartnership.com>
Subject: Re: [PATCH][RFC] parisc: Use local tlb purges only on UP machines
Date: Sun, 25 Sep 2022 14:19:45 -0400 [thread overview]
Message-ID: <bffa9fac-a6f6-fc7e-0e66-5df215aef2ba@bell.net> (raw)
In-Reply-To: <92a8b235-7d04-9931-a153-440adbc8802a@gmx.de>
On 2022-09-25 1:51 p.m., Helge Deller wrote:
> On 9/25/22 16:33, John David Anglin wrote:
>> I believe this change is wrong and will reduce performance.
>
> Yes, could be. That's why intentionally marked it RFC.
>
>> The TLB setup for a TMPALIAS flush is local to any given CPU. So, we
>> should only need a local TLB purge.
>
> Can those function theoretially be preempted?
> If so, could it be scheduled on another CPU where the TMPALIAS isn't flushed?
I think preempt_disable/preempt_enable are used before/after all calls to these routines.
It would be better if these calls were in the flush routines.
>
>> A local TLB purge doesn't require locking to serialize PxTLB broadcasts. It is also faster than
>> a global TLB purges
>
> True.
>
>> Indeed, the case that might be wrong is the one that uses pdtlb.
>
> Which do you have in mind here?
The pdtlb instructions in these routines are not serialized. Theoretically, this could result in bus
contention and system malfunction. Maybe only D and R class machines are PA 1.1 and SMP.
>
>> It potentially needs serialization
>> on SMP machines. See comment in pgtable.h.
>
> One goal of that patch was to drop the CONFIG_PA20 ifdef case,
> because a 32-bit kernel could be compiled for PA8000 in which case
> the "pdtlb,l" will burn the machine.
Don't think so. "pdtlb,l" is available on all PA 2.0 machines. It's not 64-bit specific.
> I'll send another patch which takes care of this without changing
> the local purges of pdtlb on 64bit CPUs.
Dave
--
John David Anglin dave.anglin@bell.net
next prev parent reply other threads:[~2022-09-25 18:19 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-25 6:56 [PATCH][RFC] parisc: Use local tlb purges only on UP machines Helge Deller
2022-09-25 14:33 ` John David Anglin
2022-09-25 17:51 ` Helge Deller
2022-09-25 18:19 ` John David Anglin [this message]
2022-09-25 18:44 ` John David Anglin
2022-09-25 18:58 ` Helge Deller
2022-09-25 19:27 ` John David Anglin
2022-09-25 20:00 ` Helge Deller
2022-09-25 20:21 ` John David Anglin
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=bffa9fac-a6f6-fc7e-0e66-5df215aef2ba@bell.net \
--to=dave.anglin@bell.net \
--cc=James.Bottomley@hansenpartnership.com \
--cc=deller@gmx.de \
--cc=linux-parisc@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;
as well as URLs for NNTP newsgroup(s).