From patchwork Wed Dec 16 23:30:12 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean X-Patchwork-Id: 68461 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.2) with ESMTP id nBI4ixrD005715 for ; Fri, 18 Dec 2009 04:46:52 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935159AbZLPXcw (ORCPT ); Wed, 16 Dec 2009 18:32:52 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1758722AbZLPXcv (ORCPT ); Wed, 16 Dec 2009 18:32:51 -0500 Received: from jordan.toaster.net ([69.36.241.228]:3802 "EHLO jordan.toaster.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757511AbZLPXcu (ORCPT ); Wed, 16 Dec 2009 18:32:50 -0500 Received: from [127.0.0.1] (slazar@localhost.toaster.net [127.0.0.1]) by jordan.toaster.net (8.13.3/8.12.11) with ESMTP id nBGNUCNs068116; Wed, 16 Dec 2009 15:30:13 -0800 (PST) (envelope-from knife@toaster.net) Message-ID: <4B296D84.7090603@toaster.net> Date: Wed, 16 Dec 2009 15:30:12 -0800 From: Sean User-Agent: Thunderbird 2.0.0.23 (X11/20090812) MIME-Version: 1.0 To: Alan Stern CC: Andrew Morton , bugzilla-daemon@bugzilla.kernel.org, linux-media@vger.kernel.org, USB list , Ingo Molnar , Thomas Gleixner , "H. Peter Anvin" Subject: Re: [Bugme-new] [Bug 14564] New: capture-example sleeping function called from invalid context at arch/x86/mm/fault.c References: In-Reply-To: X-Spam-Level: X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on jordan.toaster.net X-Spam-Status: No, hits=-3.0 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=2.63 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-1.5.3 (jordan.toaster.net [127.0.0.1]); Wed, 16 Dec 2009 15:30:41 -0800 (PST) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org --- ohci-mem.c.orig 2009-12-16 22:57:49.000000000 +0000 +++ ohci-mem.c 2009-12-16 22:49:37.000000000 +0000 @@ -103,8 +103,13 @@ { struct td **prev = &hc->td_hash [TD_HASH_FUNC (td->td_dma)]; - while (*prev && *prev != td) + while (*prev && *prev != td) { + if ((unsigned long) *prev == 0xa7a7a7a7) { + ohci_info(hc, "poisoned hash at %p\n", prev); + return; + } prev = &(*prev)->td_hash; + } if (*prev) *prev = td->td_hash; else if ((td->hwINFO & cpu_to_hc32(hc, TD_DONE)) != 0)