Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752306Ab3F3Sd7 (ORCPT ); Sun, 30 Jun 2013 14:33:59 -0400 Received: from mail-ee0-f45.google.com ([74.125.83.45]:53497 "EHLO mail-ee0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752073Ab3F3Sdz (ORCPT ); Sun, 30 Jun 2013 14:33:55 -0400 Date: Sun, 30 Jun 2013 20:33:49 +0200 From: Michal Hocko To: Dave Chinner Cc: Glauber Costa , Andrew Morton , linux-mm@kvack.org, LKML Subject: Re: linux-next: slab shrinkers: BUG at mm/list_lru.c:92 Message-ID: <20130630183349.GA23731@dhcp22.suse.cz> References: <20130618024623.GP29338@dastard> <20130618063104.GB20528@localhost.localdomain> <20130618082414.GC13677@dhcp22.suse.cz> <20130618104443.GH13677@dhcp22.suse.cz> <20130618135025.GK13677@dhcp22.suse.cz> <20130625022754.GP29376@dastard> <20130626081509.GF28748@dhcp22.suse.cz> <20130626232426.GA29034@dastard> <20130627145411.GA24206@dhcp22.suse.cz> <20130629025509.GG9047@dastard> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="0F1p//8PRICkK4MW" Content-Disposition: inline In-Reply-To: <20130629025509.GG9047@dastard> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 34707 Lines: 539 --0F1p//8PRICkK4MW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Sat 29-06-13 12:55:09, Dave Chinner wrote: > On Thu, Jun 27, 2013 at 04:54:11PM +0200, Michal Hocko wrote: > > On Thu 27-06-13 09:24:26, Dave Chinner wrote: > > > On Wed, Jun 26, 2013 at 10:15:09AM +0200, Michal Hocko wrote: > > > > On Tue 25-06-13 12:27:54, Dave Chinner wrote: > > > > > On Tue, Jun 18, 2013 at 03:50:25PM +0200, Michal Hocko wrote: > > > > > > And again, another hang. It looks like the inode deletion never > > > > > > finishes. The good thing is that I do not see any LRU related BUG_ONs > > > > > > anymore. I am going to test with the other patch in the thread. > > > > > > > > > > > > 2476 [] __wait_on_freeing_inode+0x9e/0xc0 <<< waiting for an inode to go away > > > > > > [] find_inode_fast+0xa1/0xc0 > > > > > > [] iget_locked+0x4f/0x180 > > > > > > [] ext4_iget+0x33/0x9f0 > > > > > > [] ext4_lookup+0xbc/0x160 > > > > > > [] lookup_real+0x20/0x60 > > > > > > [] lookup_open+0x175/0x1d0 > > > > > > [] do_last+0x2de/0x780 <<< holds i_mutex > > > > > > [] path_openat+0xda/0x400 > > > > > > [] do_filp_open+0x43/0xa0 > > > > > > [] do_sys_open+0x160/0x1e0 > > > > > > [] sys_open+0x1c/0x20 > > > > > > [] system_call_fastpath+0x16/0x1b > > > > > > [] 0xffffffffffffffff > > > > > > > > > > I don't think this has anything to do with LRUs. > > > > > > > > I am not claiming that. It might be a timing issue which never mattered > > > > but it is strange I can reproduce this so easily and repeatedly with the > > > > shrinkers patchset applied. > > > > As I said earlier, this might be breakage in my -mm tree as well > > > > (missing some patch which didn't go via Andrew or misapplied patch). The > > > > situation is worsen by the state of linux-next which has some unrelated > > > > issues. > > > > > > > > I really do not want to delay the whole patchset just because of some > > > > problem on my side. Do you have any tree that I should try to test? > > > > > > No, I've just been testing Glauber's tree and sending patches for > > > problems back to him based on it. > > > > > > > > I won't have seen this on XFS stress testing, because it doesn't use > > > > > the VFS inode hashes for inode lookups. Given that XFS is not > > > > > triggering either problem you are seeing, that makes me think > > > > > > > > I haven't tested with xfs. > > > > > > That might be worthwhile if you can easily do that - another data > > > point indicating a hang or absence of a hang will help point us in > > > the right direction here... > > > > OK, still hanging (with inode_lru_isolate-fix.patch). It is not the same > > thing, though, as xfs seem to do lookup slightly differently. > > 12467 [] xfs_iget+0xbe/0x190 [xfs] > > [] xfs_lookup+0xe8/0x110 [xfs] > > [] xfs_vn_lookup+0x49/0x90 [xfs] > > [] lookup_real+0x20/0x60 > > [] lookup_open+0x175/0x1d0 > > [] do_last+0x2de/0x780 > > [] path_openat+0xda/0x400 > > [] do_filp_open+0x43/0xa0 > > [] do_sys_open+0x160/0x1e0 > > [] sys_open+0x1c/0x20 > > [] system_call_fastpath+0x16/0x1b > > [] 0xffffffffffffffff > > What are the full traces? Do you mean sysrq+t? It is attached. Btw. I was able to reproduce this again. The stuck processes were sitting in the same traces for more than 28 hours without any change so I do not think this is a temporal condition. Traces of all processes in the D state: 7561 [] xfs_iget+0xbe/0x190 [xfs] [] xfs_lookup+0xe8/0x110 [xfs] [] xfs_vn_lookup+0x49/0x90 [xfs] [] lookup_real+0x20/0x60 [] lookup_open+0x175/0x1d0 [] do_last+0x2de/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 8156 [] do_last+0x2c4/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 8913 [] do_last+0x2c4/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 9100 [] xfs_iget+0xbe/0x190 [xfs] [] xfs_lookup+0xe8/0x110 [xfs] [] xfs_vn_lookup+0x49/0x90 [xfs] [] lookup_real+0x20/0x60 [] lookup_open+0x175/0x1d0 [] do_last+0x2de/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 9158 [] do_last+0x2c4/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 11247 [] do_last+0x2c4/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 12161 [] path_lookupat+0x792/0x830 [] filename_lookup+0x33/0xd0 [] user_path_at_empty+0x7b/0xb0 [] user_path_at+0xc/0x10 [] vfs_fstatat+0x51/0xb0 [] vfs_stat+0x16/0x20 [] sys_newstat+0x1f/0x50 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff 12585 [] do_last+0x2c4/0x780 [] path_openat+0xda/0x400 [] do_filp_open+0x43/0xa0 [] do_sys_open+0x160/0x1e0 [] sys_open+0x1c/0x20 [] system_call_fastpath+0x16/0x1b [] 0xffffffffffffffff -- Michal Hocko SUSE Labs --0F1p//8PRICkK4MW Content-Type: application/octet-stream Content-Disposition: attachment; filename="demon.log.bz2" Content-Transfer-Encoding: base64 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 --0F1p//8PRICkK4MW-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/