Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753889AbbB0BGM (ORCPT ); Thu, 26 Feb 2015 20:06:12 -0500 Received: from mail-bn1bbn0105.outbound.protection.outlook.com ([157.56.111.105]:50304 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750822AbbB0BGK (ORCPT ); Thu, 26 Feb 2015 20:06:10 -0500 Message-ID: <1424999159.4698.78.camel@freescale.com> Subject: Re: [PATCH 0/2] powerpc/kvm: Enable running guests on RT Linux From: Scott Wood To: Sebastian Andrzej Siewior CC: Paolo Bonzini , Alexander Graf , Bogdan Purcareata , , , , , "Thomas Gleixner" Date: Thu, 26 Feb 2015 19:05:59 -0600 In-Reply-To: <54EF2025.80404@linutronix.de> References: <1424251955-308-1-git-send-email-bogdan.purcareata@freescale.com> <54E73A6C.9080500@suse.de> <54E740E7.5090806@redhat.com> <54E74A8C.30802@linutronix.de> <1424734051.4698.17.camel@freescale.com> <54EF196E.4090805@redhat.com> <54EF2025.80404@linutronix.de> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.7-0ubuntu1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Originating-IP: [2601:2:5800:3f7:12bf:48ff:fe84:c9a0] X-ClientProxiedBy: BLUPR09CA0037.namprd09.prod.outlook.com (10.255.214.165) To DM2PR0301MB0733.namprd03.prod.outlook.com (25.160.97.141) Authentication-Results: linutronix.de; dkim=none (message not signed) header.d=none; X-Microsoft-Antispam: UriScan:; X-Microsoft-Antispam: BCL:0;PCL:0;RULEID:;SRVR:DM2PR0301MB0733; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006);SRVR:DM2PR0301MB0733; X-Forefront-PRVS: 05009853EF X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(6009001)(51704005)(24454002)(479174004)(377454003)(377424004)(110136001)(86362001)(103116003)(40100003)(50466002)(2950100001)(122386002)(42186005)(33646002)(5820100001)(92566002)(47776003)(87976001)(36756003)(76176999)(50986999)(46102003)(62966003)(93886004)(23676002)(50226001)(77156002)(3826002);DIR:OUT;SFP:1102;SCL:1;SRVR:DM2PR0301MB0733;H:[IPv6:2601:2:5800:3f7:12bf:48ff:fe84:c9a0];FPR:;SPF:None;MLV:sfv;LANG:en; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:;SRVR:DM2PR0301MB0733; X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2015 01:06:06.0530 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0301MB0733 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2290 Lines: 51 On Thu, 2015-02-26 at 14:31 +0100, Sebastian Andrzej Siewior wrote: > On 02/26/2015 02:02 PM, Paolo Bonzini wrote: > > > > > > On 24/02/2015 00:27, Scott Wood wrote: > >> This isn't a host PIC driver. It's guest PIC emulation, some of which > >> is indeed not suitable for a rawlock (in particular, openpic_update_irq > >> which loops on the number of vcpus, with a loop body that calls > >> IRQ_check() which loops over all pending IRQs). > > > > The question is what behavior is wanted of code that isn't quite > > RT-ready. What is preferred, bugs or bad latency? > > > > If the answer is bad latency (which can be avoided simply by not running > > KVM on a RT kernel in production), patch 1 can be applied. If the > can be applied *but* makes no difference if applied or not. > > > answer is bugs, patch 1 is not upstream material. > > > > I myself prefer to have bad latency; if something takes a spinlock in > > atomic context, that spinlock should be raw. If it hurts (latency), > > don't do it (use the affected code). > > The problem, that is fixed by this s/spin_lock/raw_spin_lock/, exists > only in -RT. There is no change upstream. In general we fix such things > in -RT first and forward the patches upstream if possible. This convert > thingy would be possible. > Bug fixing comes before latency no matter if RT or not. Converting > every lock into a rawlock is not always the answer. > Last thing I read from Scott is that he is not entirely sure if this is > the right approach or not and patch #1 was not acked-by him either. > > So for now I wait for Scott's feedback and maybe a backtrace :) Obviously leaving it in a buggy state is not what we want -- but I lean towards a short term "fix" of putting "depends on !PREEMPT_RT" on the in-kernel MPIC emulation (which is itself just an optimization -- you can still use KVM without it). This way people don't enable it with RT without being aware of the issue, and there's more of an incentive to fix it properly. I'll let Bogdan supply the backtrace. -Scott -- 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/