How is jiffies upation while holding spinlock in Uniprocessor or SMP environment?

Russell King - ARM Linux linux at arm.linux.org.uk
Mon Oct 26 03:48:54 PDT 2015


On Mon, Oct 26, 2015 at 12:19:31PM +0530, raghu MG wrote:
> Hello,
> I have couple of questions.
> 1) In case of UP how is jiffies(timer) get updated while holding spin
> lock using spinlock_irq_save?

It isn't, and...
> 
> 2)My understanding is in smp environment jiffies updation cannot be
> done on processor holding spinlock irrespective of spinlock API.So
> timer interrupt should be enabled across all cores in SoC. Imagine a
> scenario in quad core processor where 4 cores are holding 4 different
> spinlocks & how is the timer interrupt for jiffies handled?

You can't rely on jiffies being updated while holding a spinlock.
Expecting jiffies to update while holding a spinlock is a bug.

-- 
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.



More information about the linux-arm-kernel mailing list