Messages in this thread | | | Date | Fri, 01 Jun 2012 11:31:37 +0200 | From | Jens Axboe <> | Subject | Re: [PATCH V3] block: Mitigate lock unbalance caused by lock switching |
| |
On 05/30/2012 08:28 AM, Tejun Heo wrote: > Hello, > > On Wed, May 30, 2012 at 3:28 PM, Asias He <asias@redhat.com> wrote: >>> Isn't the 'if' clause superfluous ? You could just do the assignment, >>> e.g., >>> >>> + spin_lock_irq(lock); >>> + q->queue_lock =&q->__queue_lock; >>> + spin_unlock_irq(lock); >> >> >> Well, this saves a if clause but adds an unnecessary assignment if the lock >> is already internal lock. > > It's not hot path. Dirtying the cacheline there doesn't mean anything. > I don't really care either way but making optimization argument is > pretty silly here.
And more importantly, dropping the if loses information as well. That's a lot more important than any misguided optimization attempts. So I agree, the if stays.
-- Jens Axboe
| |