From patchwork Thu Mar 21 02:02:55 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John David Anglin X-Patchwork-Id: 2310871 Return-Path: X-Original-To: patchwork-linux-parisc@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id 0A06D40213 for ; Thu, 21 Mar 2013 02:03:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754169Ab3CUCDg (ORCPT ); Wed, 20 Mar 2013 22:03:36 -0400 Received: from blu0-omc4-s21.blu0.hotmail.com ([65.55.111.160]:8178 "EHLO blu0-omc4-s21.blu0.hotmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753775Ab3CUCDg (ORCPT ); Wed, 20 Mar 2013 22:03:36 -0400 Received: from BLU0-SMTP79 ([65.55.111.137]) by blu0-omc4-s21.blu0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675); Wed, 20 Mar 2013 19:03:35 -0700 X-EIP: [KT7ON+Fn43pUIVmlKA/cxuJ/EMrvJjl0] X-Originating-Email: [dave.anglin@bell.net] Message-ID: Received: from [192.168.2.10] ([69.158.129.165]) by BLU0-SMTP79.phx.gbl over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Wed, 20 Mar 2013 19:03:34 -0700 CC: Jeroen Roovers , linux-parisc@vger.kernel.org, Helge Deller From: John David Anglin To: John David Anglin In-Reply-To: <514A183A.7090809@bell.net> MIME-Version: 1.0 (Apple Message framework v936) Subject: Re: PA8800 with 3.9.0-rc1-JeR-10942-g6dbe51c : WARNING: at lib/timerqueue.c:74 Date: Wed, 20 Mar 2013 22:02:55 -0400 References: <20130315152226.46ad0993@marga.jer-c2.orkz.net> <20130318135831.7c14b6e7@marga.jer-c2.orkz.net> <5148E903.1020105@gmx.de> <20130320182756.7b0e4f5d@marga.jer-c2.orkz.net> <514A183A.7090809@bell.net> X-Mailer: Apple Mail (2.936) X-OriginalArrivalTime: 21 Mar 2013 02:03:34.0736 (UTC) FILETIME=[4B552D00:01CE25D8] Sender: linux-parisc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-parisc@vger.kernel.org On 20-Mar-13, at 4:12 PM, John David Anglin wrote: > On 3/20/2013 1:27 PM, Jeroen Roovers wrote: >> +CONFIG_PREEMPT_NONE=y > Given that CONFIG_PREEMPT is broken, we must be missing at least one > preempt_disable()/preempt_enable() pair. You might try the attached change. My rp3440 booted with CONFIG_PREEMPT=y and CONFIG_PREEMPT_NONE=y with it. The fix is just a guess. Dave --- John David Anglin dave.anglin@bell.net diff --git a/arch/parisc/kernel/cache.c b/arch/parisc/kernel/cache.c index 4b12890..1871724 100644 --- a/arch/parisc/kernel/cache.c +++ b/arch/parisc/kernel/cache.c @@ -372,10 +372,12 @@ void flush_kernel_dcache_page_addr(void *addr) { unsigned long flags; + preempt_disable(); flush_kernel_dcache_page_asm(addr); purge_tlb_start(flags); pdtlb_kernel(addr); purge_tlb_end(flags); + preempt_enable(); } EXPORT_SYMBOL(flush_kernel_dcache_page_addr);