From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759345AbYDBRAb (ORCPT ); Wed, 2 Apr 2008 13:00:31 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1756625AbYDBRAW (ORCPT ); Wed, 2 Apr 2008 13:00:22 -0400 Received: from e31.co.us.ibm.com ([32.97.110.149]:41715 "EHLO e31.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753652AbYDBRAV (ORCPT ); Wed, 2 Apr 2008 13:00:21 -0400 Date: Wed, 2 Apr 2008 10:00:16 -0700 From: "Paul E. McKenney" To: Jens Axboe Cc: Peter Zijlstra , Ingo Molnar , Pekka J Enberg , Vegard Nossum , Linux Kernel Mailing List Subject: Re: kmemcheck caught read from freed memory (cfq_free_io_context) Message-ID: <20080402170016.GE9333@linux.vnet.ibm.com> Reply-To: paulmck@linux.vnet.ibm.com References: <20080402113327.GC41073@gandalf.sssup.it> <20080402114338.GA12774@kernel.dk> <20080402123620.GH12774@kernel.dk> <20080402123639.GI12774@kernel.dk> <20080402125530.GF41073@gandalf.sssup.it> <20080402125819.GO12774@kernel.dk> <20080402133715.GA5327@linux.vnet.ibm.com> <20080402134123.GA12774@kernel.dk> <20080402153335.GA9333@linux.vnet.ibm.com> <20080402163113.GF12774@kernel.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20080402163113.GF12774@kernel.dk> User-Agent: Mutt/1.5.13 (2006-08-11) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 02, 2008 at 06:31:14PM +0200, Jens Axboe wrote: > On Wed, Apr 02 2008, Paul E. McKenney wrote: > > On Wed, Apr 02, 2008 at 03:41:23PM +0200, Jens Axboe wrote: > > > On Wed, Apr 02 2008, Paul E. McKenney wrote: > > > > On Wed, Apr 02, 2008 at 02:58:19PM +0200, Jens Axboe wrote: > > > > > On Wed, Apr 02 2008, Fabio Checconi wrote: > > > > > > > From: Jens Axboe > > > > > > > Date: Wed, Apr 02, 2008 02:36:39PM +0200 > > > > > > > > > > > > > > > Looks good and tests fine as well. I've applied it, on top of the > > > > > > > > hlist_for_each_entry_safe_rcu() fix. > > > > > > > > > > > > > > > > http://git.kernel.dk/?p=linux-2.6-block.git;a=commit;h=436151ad32b4a59e0d36165a7d6312545f126661 > > > > > > > > > > > > > > > > > > > > ok, thanks. anyway I don't think the hlist_for_each_entry_safe_rcu() > > > > > > is needed at this point, since the pos->next pointer is still valid > > > > > > (at least) until the next rcu_read_unlock(). am I wrong? > > > > > > > > > > it isn't, but it's still clearer. so either that or a nice comment, I > > > > > just stuck with what I had already committed. > > > > > > > > Given Peter's comment, would you be willing to drop the > > > > hlist_for_each_entry_safe_rcu()? People tend to read too much into > > > > the "safe" sometimes. ;-) > > > > > > Sure, let me rebase it... I already sent a pull request to Linus, and he > > > just loves when I rebase and change the diffstats behind his back :) > > > > Would it help if I submitted the patch to you to back it out later? ;-) > > Hehe, I already wrote to Linus and explained why it changed, so what is > done is done :) ;-) Thanx, Paul