From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 66548C433FE for ; Sat, 25 Sep 2021 21:21:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 436E261041 for ; Sat, 25 Sep 2021 21:21:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229966AbhIYVXR (ORCPT ); Sat, 25 Sep 2021 17:23:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51374 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229842AbhIYVXQ (ORCPT ); Sat, 25 Sep 2021 17:23:16 -0400 Received: from galois.linutronix.de (Galois.linutronix.de [IPv6:2a0a:51c0:0:12e:550::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D02FAC061570; Sat, 25 Sep 2021 14:21:40 -0700 (PDT) From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1632604899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=FC2izg75fJTteYJOOY6ytBStpF+HBmdWWfEDalx5dPI=; b=zi0D8Pec3oIRsFEDPhIwdmHOrVY6LP42R44wotvWquExDYl68XwyZjr8YKRT2C/lMZPmrk dt9/TA8UlxiMasgJo09ceeQc6M8OKaLT69Yl5M1z9CxhuciWbmtrBUnx6NOHkbazUKHCc3 +gkKwZyU7rIhasYeVkYNIBtaUfPbJmoiDqLsNNdltKUYLBPvVBfyJbiVSJzvKcFpN2qE03 os7AFbvHBI9QQmNvtBa9GZe15hLFyNhZXk/a0Xd13USTH4EJJ84GIfnbIdYLcRxqXTyh/z HWHV7t6KKonadUpLzOOGpIdMJeXFcH3va/P7p+EUkuXObHF4ho3/9JsnYhIVdw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1632604899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=FC2izg75fJTteYJOOY6ytBStpF+HBmdWWfEDalx5dPI=; b=Pu7/xNkZmyrhNRUMgJdHgur9uaDO525VlERAI3Og3nK8N5yts54/hzguhnV1QeJaTTGDRK 8Z4O+ch55n12DLBg== To: Marc Zyngier , Florian Fainelli Cc: linux-kernel@vger.kernel.org, Russell King , Ray Jui , Scott Branden , "maintainer:BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITE..." , Catalin Marinas , Will Deacon , Yoshinori Sato , Rich Felker , Rob Herring , Frank Rowand , Ard Biesheuvel , Mike Rapoport , Linus Walleij , Andrew Morton , Geert Uytterhoeven , Arnd Bergmann , Guenter Roeck , Kefeng Wang , Mark Rutland , Andrey Konovalov , Anshuman Khandual , Valentin Schneider , Ingo Molnar , Peter Zijlstra , "moderated list:ARM PORT" , "open list:SUPERH" , "open list:BROADCOM BMIPS MIPS ARCHITECTURE" , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE" Subject: Re: [PATCH 03/11] genirq: Export irq_set_affinity_locked() In-Reply-To: <87tui8ub87.wl-maz@kernel.org> References: <20210924170546.805663-1-f.fainelli@gmail.com> <20210924170546.805663-4-f.fainelli@gmail.com> <87tui8ub87.wl-maz@kernel.org> Date: Sat, 25 Sep 2021 23:21:38 +0200 Message-ID: <87tui8cpwd.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-sh@vger.kernel.org On Sat, Sep 25 2021 at 12:48, Marc Zyngier wrote: > On Fri, 24 Sep 2021 18:05:38 +0100, Florian Fainelli wrote: >> } >> +EXPORT_SYMBOL_GPL(irq_set_affinity_locked); > > This doesn't seem right. > > This driver seem to try and move interrupts on its own when the CPU > goes down. Why can't it rely on the normal CPU hotplug infrastructure > to do so like all the other drivers (bar some Cavium driver that does > the same thing)? > > I'd rather you take this opportunity to move these drivers into the > 21st century, so that we can kill irq_cpu_offline() and co altogether. I wanted to kill these callbacks years ago. Cavium has two variants of those offline/online callbacks: 1) octeon_irq_cpu_offline_ciu() which is doing the same as that BCM driver. These really can go away. Just remove the callback and everything just works. 2) Two other variants to fiddle with chip internals, but those chips do not have an irq_affinity() callback which makes it more interesting. I don't see a proper way to solve that except for removing Cavium alltogether, but once the BCM one is gone, we just can make this muck depend on CAVIUM and be done with it. And I mean depend and not select. Thanks, tglx