From patchwork Tue Feb 22 01:43:46 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dave Hylands X-Patchwork-Id: 578951 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p1M1htQS003896 for ; Tue, 22 Feb 2011 01:43:56 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751883Ab1BVBns (ORCPT ); Mon, 21 Feb 2011 20:43:48 -0500 Received: from mail-iw0-f174.google.com ([209.85.214.174]:47773 "EHLO mail-iw0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751341Ab1BVBnr convert rfc822-to-8bit (ORCPT ); Mon, 21 Feb 2011 20:43:47 -0500 Received: by iwn34 with SMTP id 34so78584iwn.19 for ; Mon, 21 Feb 2011 17:43:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=N6aez2zOzlzTfjlKgdlu5TQgI4GZ9NFXJtbhnCE/C9s=; b=TfXbeqdO3gG7DJJixNE1K5d2NyysfhHtX0EtG8IkT6MsHFJMxflj22tVddBSU6uYPF n04X2P8rVgQBf63v2ZPFvKdxhFPQ/LLXFoqcEEkgIMdoR2oW0kJlTrreO4kxVofWniwG sl9K0u1kPsj2wB3UzLvz3YrX0CPlbAZ8OPka4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=JjIagDxusShRTXxsjnHbXiVO+Jh8xmqZTl0Myoh34O9ta52P3vgNdhJiYYYyjAP8Y/ vwCdNRKSedXMpJwIUzns0vM0caIFP4Y/qnTKJ6oOmBD4fjabPgI/70ApzuRgjy9gRhgp 6gt/1ZMiTlHbEoNDewaxDcSc6lbWUhg4xtEug= MIME-Version: 1.0 Received: by 10.42.166.138 with SMTP id o10mr2952571icy.22.1298339026862; Mon, 21 Feb 2011 17:43:46 -0800 (PST) Received: by 10.42.178.10 with HTTP; Mon, 21 Feb 2011 17:43:46 -0800 (PST) In-Reply-To: <4D62523D.5080203@corscience.de> References: <4D62523D.5080203@corscience.de> Date: Mon, 21 Feb 2011 18:43:46 -0700 Message-ID: Subject: Re: SDHC card affected by preemption model in 2.6.35 From: Dave Hylands To: Johannes Reif Cc: "S, Venkatraman" , Mathieu Poirier , Madhusudhan Chikkature , linux-omap Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Tue, 22 Feb 2011 01:43:56 +0000 (UTC) diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 11869fa..90a17ca 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -2047,6 +2047,15 @@ repeat: move_linked_works(work, scheduled, &n); process_scheduled_works(rescuer); + + /* + * Leave this gcwq. If keep_working() is %true, notify a + * regular worker; otherwise, we end up with 0 concurrency + * and stalling the execution. + */ + if (keep_working(gcwq)) + wake_up_worker(gcwq); + spin_unlock_irq(&gcwq->lock); }