From nobody Wed Feb 5 18:50:37 2025 Received: from mail-pj1-f52.google.com (mail-pj1-f52.google.com [209.85.216.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 36A691DE3DC for ; Thu, 16 Jan 2025 12:07:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737029243; cv=none; b=ubR7UBMBX+FH0z5twswhfwFwFeyFEcCWILTySrqXtNNRcoGTLH6nC+UNlCctbNjnqVnChUsv/ubBEhpQHvPr5xgcz/QxsoosceqQbpZZ72ZyzR9mxZL+CTt5IH3GxOtTPnEnPHmqmQul1rve5tFpPlNwgGnXlF5oSnV4l+iXz1g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737029243; c=relaxed/simple; bh=XPKCSmq1/jJPe2XRU5UoKjtu89RSXzFwAMR5WwqYISU=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=MxdTs3jEHVZ2HB/t4TQZryQz21ZHNWLspkRCZBlpYiaJpFYObXvo87E+kqT0fn1pf1orqHjiJP2pZfXhiX557hjS72csXj4QYyXZ3PXwZTBrh8IH/ulAcow+CjjWWC21KGHvJBBzdNjmd5Wi1gWOx4LJRU1DBWknJjYL4pcT2BE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=bytedance.com; spf=pass smtp.mailfrom=bytedance.com; dkim=pass (2048-bit key) header.d=bytedance.com header.i=@bytedance.com header.b=fOYCqt5k; arc=none smtp.client-ip=209.85.216.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=bytedance.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bytedance.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bytedance.com header.i=@bytedance.com header.b="fOYCqt5k" Received: by mail-pj1-f52.google.com with SMTP id 98e67ed59e1d1-2ef87d24c2dso1211011a91.1 for ; Thu, 16 Jan 2025 04:07:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1737029239; x=1737634039; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=vjoIrNj0QMsZmobnE1Uo6wEuvK/kGWI+sEPaN56KSbk=; b=fOYCqt5k4gqNZamKPBgIG1HLJhgj1ae2QBVjezcoJRgpjBoslu+Xmm/NwY2YoIn9l4 qkcidOb1/dTsQq6KF6/WvSsOMr4u26RLnYT0m4Pa6NWfcn8A5RvPDEyIdsrmb2/Rbu3k 1zBjNT4+hL0DMSUQ8FpmThnqwHrez8PNVnbqehblODXMZ1uUJZyJ25pAZVoKqqimRNEN BdqIYu8/vnTpSwUHVkvstDyIgcGHjMBecuPfrUXj8ryFuMMivOcSxBOX/hMuigmQC98K NP/1SZQ8qdeSJysw2fnRUax/aNqiLHUzkM1n4YpFYtfoGHu1DGLHByO0xMDDIBiJFrQP sFjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737029239; x=1737634039; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=vjoIrNj0QMsZmobnE1Uo6wEuvK/kGWI+sEPaN56KSbk=; b=vktyYQO/OwuiZ7x2lbnJs7s2C6dOaNi51rG+zOJzjGVWNej+VqvL/lsnukBKbTmkyA g9Wso9cjWxSGkkPM9olsaEP0jXbsHdg5YlQ7ojLXePgECjvRU4fT3j/eBXbGy3nKLxsd cUeS/TkMF4GSV0yJjP0DVpd7R/ny0834TzSdPjtbF2FCRc7WzKZCzQMILdK2iQ7E5Y0D RJstExH1r+Q8dvMupk4YO/N3ByJPts0QM67t08F3RaMSjlqmgxEwLWSkigO+Eq+9LkJo reddPSU2+ye1wA5V11+SAOheGTcyE3wdZHnGnvWDc/OoKfZDZ/+gkHbx1M1hcXPVdK3q DkOQ== X-Forwarded-Encrypted: i=1; AJvYcCUpmnE+CZ84734CxI4Ypczpf72Y2BA1eCfwL0F8jHP4W3THJuNzI56GP5EV0/rnMOB9a0yARsDhxC8shHk=@vger.kernel.org X-Gm-Message-State: AOJu0YysEMd0PP59fgQn+M2ramrylw6cnBH5fSZbmNcDoctUuqwPb5zv /+CHJaRK1/MUnNKGWp3GhSG/pplsg8E+JvnvAgwClrAfqG862KjJV/iMIlNMQwA= X-Gm-Gg: ASbGnct8MEl8SnF6TsH1TdSZZLW+JljWpT+5N2FIpXjx868vcfwQEPcwHq73WPgd65w nhA4afgMFsOCBcMLwFcqNfp1LrydmlGOqIhCOyuZdkf1cSDbBK9qM+d2DQ33hefJdFkBIug208P X2SwGxdyP12aI0XhhXxrNFOuM+cNmd4mgt+sDw2tZia3VkRrwaqIjOHpSGriofBLq5hPejvBREz WJ4MvP1l5VdAde4mYMqdQi7S+fDItzBNGcz10OoI42FVTTA7U1vuZ51oKF+Eeb36tWH2WGxX8Ej A4BC+JNsgzsBkeiz9jmldI/aIrzKNfnUwZTnP74= X-Google-Smtp-Source: AGHT+IG/9il8Yue5wq3oM4xM55blK3qfafjyNG3fhU5P1xQXgw0XjZHCXKdJv5mrxQVtLQUQ2Gsmqw== X-Received: by 2002:a17:90b:1f8a:b0:2ee:c9d8:d01a with SMTP id 98e67ed59e1d1-2f548f33b54mr50115619a91.11.1737029239201; Thu, 16 Jan 2025 04:07:19 -0800 (PST) Received: from J9GPGXL7NT.bytedance.net ([61.213.176.56]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2f72c1ccc88sm3432507a91.21.2025.01.16.04.07.15 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 16 Jan 2025 04:07:18 -0800 (PST) From: Xu Lu To: anup@brainfault.org, tglx@linutronix.de, paul.walmsley@sifive.com, palmer@dabbelt.com Cc: lihangjing@bytedance.com, xieyongji@bytedance.com, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, Xu Lu Subject: [PATCH] irqchip: riscv: Order normal writes and IPI writes Date: Thu, 16 Jan 2025 20:07:10 +0800 Message-Id: <20250116120710.51673-1-luxu.kernel@bytedance.com> X-Mailer: git-send-email 2.39.5 (Apple Git-154) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace writel_relaxed() with writel() when issuing IPI to ensure all previous write operations made by current CPU are visible to other CPUs. Signed-off-by: Xu Lu --- drivers/irqchip/irq-riscv-imsic-early.c | 2 +- drivers/irqchip/irq-thead-c900-aclint-sswi.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/irqchip/irq-riscv-imsic-early.c b/drivers/irqchip/irq-= riscv-imsic-early.c index c5c2e6929a2f..275df5005705 100644 --- a/drivers/irqchip/irq-riscv-imsic-early.c +++ b/drivers/irqchip/irq-riscv-imsic-early.c @@ -27,7 +27,7 @@ static void imsic_ipi_send(unsigned int cpu) { struct imsic_local_config *local =3D per_cpu_ptr(imsic->global.local, cpu= ); =20 - writel_relaxed(IMSIC_IPI_ID, local->msi_va); + writel(IMSIC_IPI_ID, local->msi_va); } =20 static void imsic_ipi_starting_cpu(void) diff --git a/drivers/irqchip/irq-thead-c900-aclint-sswi.c b/drivers/irqchip= /irq-thead-c900-aclint-sswi.c index b0e366ade427..8ff6e7a1363b 100644 --- a/drivers/irqchip/irq-thead-c900-aclint-sswi.c +++ b/drivers/irqchip/irq-thead-c900-aclint-sswi.c @@ -31,7 +31,7 @@ static DEFINE_PER_CPU(void __iomem *, sswi_cpu_regs); =20 static void thead_aclint_sswi_ipi_send(unsigned int cpu) { - writel_relaxed(0x1, per_cpu(sswi_cpu_regs, cpu)); + writel(0x1, per_cpu(sswi_cpu_regs, cpu)); } =20 static void thead_aclint_sswi_ipi_clear(void) --=20 2.20.1