From: jbarnes@sgi.com (Jesse Barnes)
To: linux-ia64@vger.kernel.org
Subject: Re: udelay() & preemption & drifty ITCs
Date: Mon, 24 Nov 2003 22:21:54 +0000 [thread overview]
Message-ID: <marc-linux-ia64-106971276704138@msgid-missing> (raw)
In-Reply-To: <marc-linux-ia64-106955914311295@msgid-missing>
On Mon, Nov 24, 2003 at 04:01:31PM -0600, Jack Steiner wrote:
> I dislike disabling preemption in udelay(). Although most delays are
> short, there are some delays that are 100s or 1000s of usec long. Users running
> soft-realtime really dont want preemption disabled unnecessarily.
>
> On platforms with synchronized clocks, disabling preemption is not required.
Yeah, I thought about this too, but unless we have a global flag telling
us if itcs drift or not, it seems lik we have to unconditionally disable
preemption.
> Even on platforms with drifty ITCs, preemption in udelay() is ok as long
> as migration is disabled. AFAIK, there is no standard API for disabling
> migration aside from saving/changing/restoring the cpus_allowed mask.
Then we'd have to check if drifty itcs were present and also check to
see if the process was pinned...
If we found enough code that depended on having preemption disabled
because of itc drift, it might be worthwhile to add another inline to
deal with it. As for CPU pinning, maybe we could check in
preempt_disable() whether the cpus_allowed mask only had one bit
set--that would prevent us from disabling preemption at all for pinned
processes, right?
Jesse
prev parent reply other threads:[~2003-11-24 22:21 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-11-23 3:45 udelay() & preemption & drifty ITCs Jack Steiner
2003-11-23 22:39 ` Jesse Barnes
2003-11-24 21:00 ` Jesse Barnes
2003-11-24 21:13 ` Jesse Barnes
2003-11-24 21:25 ` Jesse Barnes
2003-11-24 22:01 ` Jack Steiner
2003-11-24 22:21 ` Jesse Barnes [this message]
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=marc-linux-ia64-106971276704138@msgid-missing \
--to=jbarnes@sgi.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