From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755011AbbBPAIm (ORCPT ); Sun, 15 Feb 2015 19:08:42 -0500 Received: from ozlabs.org ([103.22.144.67]:39453 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751546AbbBPAIl (ORCPT ); Sun, 15 Feb 2015 19:08:41 -0500 Message-ID: <1424045319.3018.2.camel@ellerman.id.au> Subject: Re: [PATCH] powerpc: re-enable dynticks From: Michael Ellerman To: Paul Clarke Cc: "linuxppc-dev@lists.ozlabs.org" , linux-kernel@vger.kernel.org Date: Mon, 16 Feb 2015 11:08:39 +1100 In-Reply-To: <54DE52BC.3020303@us.ibm.com> References: <54DE52BC.3020303@us.ibm.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.7-0ubuntu1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2015-02-13 at 13:38 -0600, Paul Clarke wrote: > implement arch_irq_work_has_interrupt() for powerpc > > Commit 9b01f5bf3 introduced a dependency on "IRQ work self-IPIs" for > full dynamic ticks to be enabled, by expecting architectures to > implement a suitable arch_irq_work_has_interrupt() routine. > > Several arches have implemented this routine, including x86 (3010279f) > and arm (09f6edd4), but powerpc was omitted. > > This patch implements this routine for powerpc. > > The symptom, at boot (on powerpc arch systems) with "nohz_full= list>" is displayed: > NO_HZ: Can't run full dynticks because arch doesn't support irq > work self-IPIs > > after this patch: > NO_HZ: Full dynticks CPUs: . > > Tested against 3.19. It makes the message change, but is that correct? ie. do we actually implement "IRQ work self-IPIs"? > diff --git a/arch/powerpc/include/asm/irq_work.h > b/arch/powerpc/include/asm/irq_work.h > new file mode 100644 > index 0000000..18365ec > --- /dev/null > +++ b/arch/powerpc/include/asm/irq_work.h > @@ -0,0 +1,11 @@ > +#ifndef _ASM_IRQ_WORK_H > +#define _ASM_IRQ_WORK_H > + > +#include > + > +static inline bool arch_irq_work_has_interrupt(void) > +{ > + return 1; Should be "true"; > +} cheers