Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Thu, 27 Mar 2003 14:03:36 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Thu, 27 Mar 2003 14:03:36 -0500 Received: from pizda.ninka.net ([216.101.162.242]:5094 "EHLO pizda.ninka.net") by vger.kernel.org with ESMTP id ; Thu, 27 Mar 2003 14:03:33 -0500 Date: Thu, 27 Mar 2003 11:10:12 -0800 (PST) Message-Id: <20030327.111012.23672715.davem@redhat.com> To: torvalds@transmeta.com Cc: dane@aiinet.com, shmulik.hen@intel.com, bonding-devel@lists.sourceforge.net, bonding-announce@lists.sourceforge.net, netdev@oss.sgi.com, linux-kernel@vger.kernel.org, linux-net@vger.kernel.org, mingo@redhat.com, kuznet@ms2.inr.ac.ru Subject: Re: BUG or not? GFP_KERNEL with interrupts disabled. From: "David S. Miller" In-Reply-To: References: X-FalunGong: Information control. X-Mailer: Mew version 2.1 on Emacs 21.1 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 698 Lines: 21 From: Linus Torvalds Date: Thu, 27 Mar 2003 11:08:26 -0800 (PST) So what the test SHOULD look like is this: if (gfp_mask & __GFP_WAIT) { if (in_atomic() || irqs_disabled()) { static int count = 0; ... } } which should catch all the cases we really care about. Let's codify this "in_atomic() || irqs_disabled()" test into a macro that everyone can use to test sleepability, ok? - 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/