From patchwork Sat Feb 16 17:13:06 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Gleixner X-Patchwork-Id: 10816353 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0AA4A1399 for ; Sat, 16 Feb 2019 17:25:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E97072A184 for ; Sat, 16 Feb 2019 17:25:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DB1632A60A; Sat, 16 Feb 2019 17:25:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 859F62A184 for ; Sat, 16 Feb 2019 17:25:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731744AbfBPRZy (ORCPT ); Sat, 16 Feb 2019 12:25:54 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:54730 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731648AbfBPRZy (ORCPT ); Sat, 16 Feb 2019 12:25:54 -0500 Received: from localhost ([127.0.0.1] helo=nanos.tec.linutronix.de) by Galois.linutronix.de with esmtp (Exim 4.80) (envelope-from ) id 1gv3ig-0001ia-MY; Sat, 16 Feb 2019 18:25:42 +0100 Message-Id: <20190216171306.403545970@linutronix.de> User-Agent: quilt/0.65 Date: Sat, 16 Feb 2019 18:13:06 +0100 From: Thomas Gleixner To: LKML Cc: Ming Lei , Christoph Hellwig , Bjorn Helgaas , Jens Axboe , linux-block@vger.kernel.org, Sagi Grimberg , linux-nvme@lists.infradead.org, linux-pci@vger.kernel.org, Keith Busch , Marc Zyngier , Sumit Saxena , Kashyap Desai , Shivasharan Srikanteshwara Subject: [patch v6 0/7] genirq/affinity: Overhaul the multiple interrupt sets support Sender: linux-block-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This is the final update to the series with a few corner cases fixes vs. V5 which can be found here: https://lkml.kernel.org/r/20190214204755.819014197@linutronix.de The series applies against: git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git master and is also available from: git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.irq Changes vs. V5: - Change the invocation for the driver callback so it is invoked even when there are no interrupts left to spread out. That ensures that the driver can adjust to the situation (in case of NVME a single interrupt) - Make sure the callback is invoked in the legacy irq fallback case so the driver is not in a stale state from a failed MSI[X} allocation attempt. - Fix the adjustment logic in the NVME driver as pointed out by Ming and Marc, plus another corner case I found during testing. - Simplify the unmanaged set support Thanks, tglx 8<------------- drivers/nvme/host/pci.c | 117 +++++++++++++--------------------------- drivers/pci/msi.c | 39 +++++-------- drivers/scsi/be2iscsi/be_main.c | 2 include/linux/interrupt.h | 35 ++++++++--- include/linux/pci.h | 4 - kernel/irq/affinity.c | 116 ++++++++++++++++++++++++--------------- 6 files changed, 153 insertions(+), 160 deletions(-) Acked-by: Marc Zyngier