Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Sun, 13 Oct 2002 03:51:09 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Sun, 13 Oct 2002 03:51:09 -0400 Received: from pizda.ninka.net ([216.101.162.242]:58252 "EHLO pizda.ninka.net") by vger.kernel.org with ESMTP id ; Sun, 13 Oct 2002 03:51:08 -0400 Date: Sun, 13 Oct 2002 00:50:05 -0700 (PDT) Message-Id: <20021013.005005.41948345.davem@redhat.com> To: wagnerjd@prodigy.net Cc: robm@fastmail.fm, hahn@physics.mcmaster.ca, linux-kernel@vger.kernel.org, jhoward@fastmail.fm Subject: Re: Strange load spikes on 2.4.19 kernel From: "David S. Miller" In-Reply-To: <000c01c2728d$263c0ca0$7443f4d1@joe> References: <20021013.000127.43007739.davem@redhat.com> <000c01c2728d$263c0ca0$7443f4d1@joe> 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: 1017 Lines: 24 From: "Joseph D. Wagner" Date: Sun, 13 Oct 2002 02:49:55 -0500 > But there is no fundamental reason for that, we just haven't > gotten around to threading that bit yet. Oh yes there is. What if an allocation of blocks and/or inodes is preempted? Another thread could attempt to allocate the same set of blocks and/or inodes. That's why we protect the allocation with SMP locking primitives which under Linux prevent preemption. This isn't rocket science, the IP networking is fully threaded for example and I consider that about as hard to thread as something like ext2/ext3 inode/block allocation. Also, as Andi Kleen noted, it's actually filesystem dependant whether the inode/block allocation is threaded or not. - 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/