From mboxrd@z Thu Jan 1 00:00:00 1970 From: sboyd@codeaurora.org (Stephen Boyd) Date: Wed, 31 Jul 2013 17:16:49 -0700 Subject: [PATCH 2/2] Convert PowerPC macro spin_event_timeout() to architecture independent macro In-Reply-To: <51F9A80E.5010307@tabi.org> References: <1375187900-17582-1-git-send-email-B44344@freescale.com> <1375187900-17582-3-git-send-email-B44344@freescale.com> <20130731071630.GI8868@codeaurora.org> <51F9A5FE.8030608@codeaurora.org> <51F9A80E.5010307@tabi.org> Message-ID: <51F9A8F1.9020704@codeaurora.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 07/31/13 17:13, Timur Tabi wrote: > On 07/31/2013 07:04 PM, Stephen Boyd wrote: >> If it yields why are we using udelay? Why not usleep_range()? It would >> be useful to have a variant that worked in interrupt context and it >> looked like that was almost possible. > I've never heard of usleep_range() before, so I don't know if it > applies. Apparently, udelay() includes its own call to cpu_relax(). Is > it possible that cpu_relax() is a "lightweight" yield, compared to sleeping? cpu_relax() is usually just a compiler barrier or an instruction hint to the cpu that it should cool down because we're spinning in a tight loop. It certainly shouldn't be calling into the scheduler. > > FYI, you might want to look at the code reviews for spin_event_timeout() > on the linuxppc-dev mailing list, back in March 2009. > Sure. Any pointers? Otherwise I'll go digging around the archives. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation