From mboxrd@z Thu Jan 1 00:00:00 1970 From: Asias He Subject: Re: [PATCH V3] block: Mitigate lock unbalance caused by lock switching Date: Wed, 06 Jun 2012 10:12:43 +0800 Message-ID: <4FCEBC9B.5040201@redhat.com> References: <20120528102214.GB15202@dhcp-172-17-108-109.mtv.corp.google.com> <1338255542-22247-1-git-send-email-asias@redhat.com> <4FC4D2F2.2070309@gmail.com> <4FC5BDF5.2040000@redhat.com> <4FC88BF9.2030807@kernel.dk> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: Tejun Heo , Tim Gardner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, tim.gardner@canonical.com To: Jens Axboe Return-path: Received: from mx1.redhat.com ([209.132.183.28]:58566 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751447Ab2FFCLf (ORCPT ); Tue, 5 Jun 2012 22:11:35 -0400 In-Reply-To: <4FC88BF9.2030807@kernel.dk> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Hello, Jens On 06/01/2012 05:31 PM, Jens Axboe wrote: > On 05/30/2012 08:28 AM, Tejun Heo wrote: >> Hello, >> >> On Wed, May 30, 2012 at 3:28 PM, Asias He 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. Could you pick this patch in your tree? -- Asias