[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCHv4 5/8] xen: use ticket locks for spin locks
On Thu, 2015-04-30 at 16:33 +0100, David Vrabel wrote: > > void _spin_lock_irq(spinlock_t *lock) > { > - LOCK_PROFILE_VAR; > - > ASSERT(local_irq_is_enabled()); > local_irq_disable(); > - check_lock(&lock->debug); > - while ( unlikely(!_raw_spin_trylock(&lock->raw)) ) > - { > - LOCK_PROFILE_BLOCK; > - local_irq_enable(); > - while ( likely(_raw_spin_is_locked(&lock->raw)) ) > - cpu_relax(); > - local_irq_disable(); > - } > - LOCK_PROFILE_GOT; > - preempt_disable(); > + _spin_lock(lock); This (and the irqsave variant) differs in that it spins/waits with irq's disabled unlike the previous implementation which enabled irqs while it waited. Is this change intentional? I think it warrants a mention and rationale in the commit log if so. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |