Received: by 2002:a05:6a10:6d10:0:0:0:0 with SMTP id gq16csp886488pxb; Fri, 22 Apr 2022 13:27:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyal7bAGNw9+mZChoSjv5TJ8X4ICiFcZUbrszOdaNhWwFOezrnBdZOG188zaBM5FbtCsDli X-Received: by 2002:a17:902:e890:b0:15a:161a:16a with SMTP id w16-20020a170902e89000b0015a161a016amr6199224plg.39.1650659243415; Fri, 22 Apr 2022 13:27:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1650659243; cv=none; d=google.com; s=arc-20160816; b=bnw6dEfJ6TiKPgs5UH+SZiJdVHNupos7fkKkFVpteD1VLE2HYUkwLgq/Od+BS2Z1HG GnQbiYpXyS9cjPXxzfHODIVLMlmaRUVyVAWiG7ZkkNE/PSh+mb9QQ9aZT+G6q6cx7zJ0 LqggIQqGnMSLWUXPfh4EML+sVlUw/9RNbVlBBSrnkj25/NlfIzn2lXEllpG7mW5+JQ2J wMTYqF+1aeneonKcldiA8VYqddvbcRk7Sq8/7Y9Bu9EOcIalnk+ChdGkaxwA4FdUkOFM Z5BuFkDiloeHE5tnz0Mec7i2LMXPU+Ihx/aRvSQ+htf+jcFyhfShICwEj9YxvGkk0gW/ 7fpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=HnqqSsjL9QQm+IpAcwauYSo9Io7ouReUn6ghaim9b0I=; b=Pc1WKfI6ZT6oBA+7tXsX/FffvjAJXvoTAHVZbmJg+X+igmxFSYs6MDo8DZwqLpZrJu nEtRzkm3nYVFP6SmDT0lIPoM4vjlsfYLQyURTy4G2vOz7b1LLQCDLPE8fy0mRQEf25YC 0CFowT59rD0YoZtisXq+KOggOoS9DR43++2tTkLCdmUQ5yWtRq7iemLEtJt53uv6XMQt rjqmnlX6aOOP3AnthCBLQW1ORwKK4gVPt2L/2YtaSqPp6VqxksIKN0K3l1xWBGSwU1ft TmZQft8Sa1Jw9xbfL9w9jghHtPxMAu9eFqL1VCxpuLka1UqLwrtjm4z13ejcJUNnwoTI s0xg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ZjT8ZhfB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id d17-20020a63fd11000000b003aa494ca6dasi8557622pgh.837.2022.04.22.13.27.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Apr 2022 13:27:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ZjT8ZhfB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 7761A27611D; Fri, 22 Apr 2022 12:14:22 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1379316AbiDTOIr (ORCPT + 99 others); Wed, 20 Apr 2022 10:08:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54998 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379310AbiDTOIm (ORCPT ); Wed, 20 Apr 2022 10:08:42 -0400 Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E8E9F3E0E0; Wed, 20 Apr 2022 07:05:55 -0700 (PDT) Received: by mail-pj1-x1036.google.com with SMTP id 2so2047273pjw.2; Wed, 20 Apr 2022 07:05:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=HnqqSsjL9QQm+IpAcwauYSo9Io7ouReUn6ghaim9b0I=; b=ZjT8ZhfBExSv6n6WjkCSh9zUr2OvIPG/pBPPq4OwJ1Q/zOstz0vV4czjDMVWuZ1zCi Cl86wJPMqAU61fDy5XDHrb2UBdti70SAvt48orBaYyHukIxAYlf6Wfv5x0wYrAarR3w6 SpHggtTrhwTuppiAxCb0TvpWa2GzeguT5hKPgtVca3a7iQABQrHmx9pxBsl1RrMVdGBj oUIwZ5wsfVGu+kIsVaDKnHfVyLcpax2buLEc38VOu3kI/gKjvwTN4fMsrwGD2WFfZUyA jFazxm2MuCcnPr9lluLc5lW1r8WoIpfbpg3RfspbdXflZwxJsa30hGxnEYRSFNW2UK3/ ipAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=HnqqSsjL9QQm+IpAcwauYSo9Io7ouReUn6ghaim9b0I=; b=BLpo2OAXsSy9S5a4vViGehkyYXFVseyb4NshPCJvQAUx9W0qNZ555EDe5wmSRlwAWz plXMbE3df5zK7w4+RUCvaibC02jKMD30IPfWR9PStud6zw8Q/i8kjfImoRdxX60Hpira +KA5qfN73nk7eM0AC9CocMYRhgoEwMBRPRyhonU5lNaG3LcT+AGuhm3WOGEmI5BaS2/V 4x+fEp1ZWQeAaiBkung0pUU8v0CRwldYLAk//9sEb+LylOYEiDh3dgPccNNny9k0PvW9 1FIGtjq0pie8wjhdMao5xo6aqgugJkfJU9WHIMbz6is22Nq0FDiuCy78ribOwmuGiQm9 8NRQ== X-Gm-Message-State: AOAM531rOihHvCu0c03eQXHdgdAjqzr45+I8Azbee9MCnMgR6e6bDhCV 7wM4DwgR3T7I/D2rk82c2vfhRY0XFQ== X-Received: by 2002:a17:90a:ba15:b0:1c6:7873:b192 with SMTP id s21-20020a17090aba1500b001c67873b192mr4721316pjr.76.1650463555255; Wed, 20 Apr 2022 07:05:55 -0700 (PDT) Received: from piliu.users.ipa.redhat.com ([209.132.188.80]) by smtp.gmail.com with ESMTPSA id br10-20020a056a00440a00b0050a777cd10csm10959178pfb.91.2022.04.20.07.05.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 Apr 2022 07:05:54 -0700 (PDT) From: Pingfan Liu To: linux-s390@vger.kernel.org Cc: Pingfan Liu , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Sebastian Andrzej Siewior , linux-kernel@vger.kernel.org Subject: [PATCH 4/9] s390/irq: utilize RCU instead of irq_lock_sparse() in show_msi_interrupt() Date: Wed, 20 Apr 2022 22:05:16 +0800 Message-Id: <20220420140521.45361-5-kernelfans@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20220420140521.45361-1-kernelfans@gmail.com> References: <20220420140521.45361-1-kernelfans@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RDNS_NONE, SPF_HELO_NONE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org irq_desc can be accessed safely in RCU read section as demonstrated by kstat_irqs_usr(). And raw_spin_lock_irqsave() context can provide a rcu read section, which can be utilized to get rid of irq_lock_sparse(). Signed-off-by: Pingfan Liu Cc: Heiko Carstens Cc: Vasily Gorbik Cc: Alexander Gordeev Cc: Christian Borntraeger Cc: Sven Schnelle Cc: Sebastian Andrzej Siewior Cc: linux-kernel@vger.kernel.org To: linux-s390@vger.kernel.org --- arch/s390/kernel/irq.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index 3033f616e256..6302dc7874cf 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -205,12 +205,13 @@ static void show_msi_interrupt(struct seq_file *p, int irq) unsigned long flags; int cpu; - irq_lock_sparse(); + raw_spin_lock_irqsave(&desc->lock, flags); desc = irq_to_desc(irq); - if (!desc) - goto out; + if (!desc) { + raw_spin_unlock_irqrestore(&desc->lock, flags); + return; + } - raw_spin_lock_irqsave(&desc->lock, flags); seq_printf(p, "%3d: ", irq); for_each_online_cpu(cpu) seq_printf(p, "%10u ", irq_desc_kstat_cpu(desc, cpu)); @@ -223,8 +224,6 @@ static void show_msi_interrupt(struct seq_file *p, int irq) seq_putc(p, '\n'); raw_spin_unlock_irqrestore(&desc->lock, flags); -out: - irq_unlock_sparse(); } /* -- 2.31.1