Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S262205AbUD2A2C (ORCPT ); Wed, 28 Apr 2004 20:28:02 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S262213AbUD2A2C (ORCPT ); Wed, 28 Apr 2004 20:28:02 -0400 Received: from brmea-mail-3.Sun.COM ([192.18.98.34]:1199 "EHLO brmea-mail-3.sun.com") by vger.kernel.org with ESMTP id S262205AbUD2A17 (ORCPT ); Wed, 28 Apr 2004 20:27:59 -0400 Date: Wed, 28 Apr 2004 16:24:58 -0700 From: Tim Hockin To: Linux Kernel mailing list Subject: BUG: might_sleep in /proc/swaps code Message-ID: <20040428232457.GB1483@sun.com> Reply-To: thockin@sun.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.1i Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1082 Lines: 34 Testing some othe rwork, totally unrelated, we added a might_sleep() to mntput(). It turned up this: Debug: sleeping function called from invalid context at include/linux/mount.h:82 in_atomic():1, irqs_disabled():0 Call Trace: [] __might_sleep+0xab/0xcb [] d_path+0x171/0x272 [] seq_path+0x4b/0xf4 [] swap_show+0x3d/0x110 [] seq_read+0xa8/0x31b [] do_brk+0x14f/0x21c [] vfs_read+0xaf/0x119 [] sys_read+0x3f/0x5d [] sysenter_past_esp+0x52/0x71 * /proc/swaps uses seq_file code, calling seq_path() with swaplock held * seq_path() calls d_path() * d_path() calls mntput() which might_sleep() Is this worth trying to solve? -- Tim Hockin Sun Microsystems, Linux Software Engineering thockin@sun.com All opinions are my own, not Sun's - 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/