From: pavel@ucw.cz (Pavel Machek)
To: linux-arm-kernel@lists.infradead.org
Subject: udelay() broken for SMP cores?
Date: Fri, 23 Apr 2010 11:00:51 +0200 [thread overview]
Message-ID: <20100423090050.GA2213@ucw.cz> (raw)
In-Reply-To: <20100421095036.GA13971@n2100.arm.linux.org.uk>
Hi!
> > Is this an ARM specific decision? Cpufreq certainly supports per cpu scaling
> > and x86 udelay uses per-CPU data. So your concern should apply for x86
> > too. I had the same concern and was planning on bring it up in the cpufreq
> > mailing list after I made sure I didn't misunderstand anything.
>
> Well, x86 looks buggy in this regard as well - the loops_per_jiffy
> value used is for a CPU which may not run the delay loop.
x86 assumes all cores to be essentially same.
> > Btw, your concern should apply for single core scaling too, right? Context
> > switch can complete within max udelay (general - 5ms, ARM - 2ms) time and
> > CPU could have jumped
> > from lowest to highest speed in that time and mess up udelay. I didn't see
> > any code in cpufreq that deferred scaling during udelay. So, that's something
> > I plan to ask cpufreq folks too.
>
> Well, the assumption is that the CPUs will be running at their fastest
> speed at boot time, and therefore loops_per_jiffy will be calibrated
> such that we guarantee _at least_ the asked-for delay - which is the
> only guarantee udelay has.
Well, some machines can't reach max cpu speed on battery power, so
there may be a problem there.
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
prev parent reply other threads:[~2010-04-23 9:00 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-21 2:19 udelay() broken for SMP cores? Saravana Kannan
2010-04-21 4:56 ` Shilimkar, Santosh
2010-04-21 6:43 ` Saravana Kannan
2010-04-21 7:22 ` Russell King - ARM Linux
2010-04-21 9:39 ` skannan at codeaurora.org
2010-04-21 9:50 ` Russell King - ARM Linux
2010-04-21 9:58 ` Gilles Chanteperdrix
2010-04-21 10:00 ` Jamie Lokier
2010-04-21 19:29 ` Russell King - ARM Linux
2010-04-21 19:52 ` Jamie Lokier
2010-04-21 20:21 ` Russell King - ARM Linux
2010-04-21 20:47 ` Jamie Lokier
2010-04-21 20:57 ` Russell King - ARM Linux
2010-04-22 0:14 ` Jamie Lokier
2011-01-08 23:24 ` Russell King - ARM Linux
2010-04-21 10:31 ` skannan at codeaurora.org
2010-04-21 19:33 ` Russell King - ARM Linux
2010-04-21 23:47 ` Saravana Kannan
2010-04-21 23:47 ` Saravana Kannan
2010-04-23 9:00 ` Pavel Machek [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=20100423090050.GA2213@ucw.cz \
--to=pavel@ucw.cz \
--cc=linux-arm-kernel@lists.infradead.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.