Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933562AbXKOVfj (ORCPT ); Thu, 15 Nov 2007 16:35:39 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S933221AbXKOVfN (ORCPT ); Thu, 15 Nov 2007 16:35:13 -0500 Received: from smtp-outbound-1.vmware.com ([65.113.40.141]:37543 "EHLO smtp-outbound-1.vmware.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932987AbXKOVfL (ORCPT ); Thu, 15 Nov 2007 16:35:11 -0500 Date: Thu, 15 Nov 2007 13:35:10 -0800 From: Micah Dowty To: Christoph Lameter Cc: Kyle Moffett , Cyrus Massoumi , LKML Kernel , Ingo Molnar , Andrew Morton , Mike Galbraith , Paul Menage Subject: Re: High priority tasks break SMP balancer? Message-ID: <20071115213510.GA16079@vmware.com> References: <20071109223417.GB16250@vmware.com> <4734F397.7080802@gmx.net> <20071110001103.GD16250@vmware.com> <2FAA6826-653E-482F-A037-C539BAEEA1DA@mac.com> <20071115191408.GA4914@vmware.com> <20071115202425.GC4914@vmware.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.16 (2007-06-09) Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1618 Lines: 34 On Thu, Nov 15, 2007 at 01:28:55PM -0800, Christoph Lameter wrote: > On Thu, 15 Nov 2007, Micah Dowty wrote: > > > Yes, the Python test harness crashes, not the kernel. It's just > > because on a kernel which exhibits this SMP balancer bug, within a > > couple of test iterations I'll hit a case where cpu1 was almost > > totally idle and the test harness divides by zero when calculating the > > imbalance. > > I still have some problem understanding what you are complaining about? > The patch that you bisected had some issues that were fixed later by > Siddha. On all kernels I've tested from after your patch was committed, I can reproduce a problem where a single high-priority thread which wakes up very frequently can artificially inflate the SMP balancer's load average for one CPU, causing other tasks to be migrated off that CPU. The result is that this high-priority thread (which may only use a few percent CPU) gets an entire CPU to itself. Even if there are several busy-looping threads running, this CPU will be mostly idle. In the first email I CC'ed you on, I attached a test program that I've been able to use to reproduce the issue. Feel free to ignore the Python program- it's just a harness I was using to test for the problem quickly during my git-bisect run. to reproduce the problem. The relevant code is all in priosched.c. Thanks, --Micah - 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/