From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 916C32C21DD; Tue, 9 Jun 2026 13:24:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.158.5 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781011488; cv=none; b=fIiooXBkXxg4UltKrhIGTx2q4JLi++m9Rh/Y1rfnbAttzaUTYYe5DjXJGdaWGS4jbSYZWyWaQHowzO7Nc1LJ/3/9aOARPCpvyJhXmXaZqMCfSCJkQRrKUTLALNkN53jdjHJkDYa0g5Wg/kbXAM5lNJFO1X4ArjDyv5HAJu4Nw0I= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781011488; c=relaxed/simple; bh=bvIFBzliHqNK7qwyI8NR89UtpUKlBq3yWXJ4PsLzUfg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NPvCS/azAgExADe2hb35AevEpXIpwHL9igjCkhtoxl52j2qrG9l81pjvuxJyIO88h0wLwFvFt6sDzfO6Jm2zJ5FooF1U90xVg8bktLwUSFXHPkvGW9YYlT1mx9lHU7E97OdmgiwnEAobNmrf6Ts/SHE6SZcTorO2gGaoVlomoLI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=HvMBTlo1; arc=none smtp.client-ip=148.163.158.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="HvMBTlo1" Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6592a8C6647384; Tue, 9 Jun 2026 13:24:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pp1; bh=xfcZ6p j6QAMbV8OXrzV3Yyjd+AWewXiQgnBFGL8o5GM=; b=HvMBTlo1C8E503YoRzryjd ggrACCUdpm/hjjAv0vFCGf+0H5GUZYL96FMB7fRgPTjo6y+PbEdI2gh9q0t0qhkE b23wn6+rIr1uDSCSJDLpLiwZXTdh78kDI7vdNzK58mntjdpAqVca7+UI7Cj5rCTQ mSX8W46bRAxdGLYzwDvl5UV7vLIhUFYfta3HiB/L2SVVYKYRls0nY/cStDbGoB2X PoEOEiFbeaZfNLz2wETZ9MzRGhF8rCKGCy4OloNHmUZW7F6Id4twZvc4FtWcCyWG SGqzi00I9f7Fta1dj+ATzwCQC2RMDLP2u9ZXHFK1rde3ooKpvgYZzdSiJ65C/uag == Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4em9ye45ft-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 09 Jun 2026 13:24:32 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 659DJgbe032054; Tue, 9 Jun 2026 13:24:32 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4emych221b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 09 Jun 2026 13:24:32 +0000 (GMT) Received: from smtpav01.fra02v.mail.ibm.com (smtpav01.fra02v.mail.ibm.com [10.20.54.100]) by smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 659DOSBT39059780 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 9 Jun 2026 13:24:28 GMT Received: from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5E7CD20040; Tue, 9 Jun 2026 13:24:28 +0000 (GMT) Received: from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2860620043; Tue, 9 Jun 2026 13:24:28 +0000 (GMT) Received: from [9.224.76.67] (unknown [9.224.76.67]) by smtpav01.fra02v.mail.ibm.com (Postfix) with ESMTP; Tue, 9 Jun 2026 13:24:28 +0000 (GMT) From: Mete Durlu Date: Tue, 09 Jun 2026 15:24:21 +0200 Subject: [PATCH v2 1/5] s390/tick: Remove CIF_NOHZ_DELAY flag Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260609-idledriver-v2-1-21c2f581d11f@linux.ibm.com> References: <20260609-idledriver-v2-0-21c2f581d11f@linux.ibm.com> In-Reply-To: <20260609-idledriver-v2-0-21c2f581d11f@linux.ibm.com> To: Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Sven Schnelle , Anna-Maria Behnsen , Frederic Weisbecker , Ingo Molnar , Thomas Gleixner , "Rafael J. Wysocki" , Daniel Lezcano , Christian Loehle Cc: Mete Durlu , Christian Borntraeger , Ilya Leoshkevich , linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org X-Mailer: b4 0.14.3 X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA5MDEyNCBTYWx0ZWRfX5CGVddOoCdFR qjmwS+lP6QcAb/SJPqnNAkSKevtq3cLFYJC3qALYNqSEKtNcbMJ4/L7qcrre7Dw2DHfM5hpO9G/ hFsjz3Q1w64lnnzeVFRWsEJ/7TzEmJvAOksrSLAJ50I8D/ldNEDvXW1AG39lz70iWcPTofcN6Y2 00QR4fhby5/ODnIfuoCdpbb6VWwY3rm6qg9RaRzlcMzjkfH5VwLOJY9VphfBuQQIOw/zmoNdGA2 3T4lampC/yCfWqWyVU0+/X6JkhrLdRiGPFmyM6eORfNmLkI8gURd2g2swv3RDJgIRV+SvL6keWL bdTiXlllpThpC9cqRWNHm+JnyOTuAkGDyymfNYXTm/tQieXxjdPCh8YcOxxPde0MIW0OcTF51Z/ q1SF/8QHLQJ79BeBMPuD8HADGxnIquKtgWs2DfTGMHRKrIKBLpSsx/omDoW8LvNkVFRRdydBCvc DTuXSbzFkZCLvpMWxDQ== X-Authority-Analysis: v=2.4 cv=QKhYgALL c=1 sm=1 tr=0 ts=6a281410 cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=7PVU6fNTM30o4ork3uUA:9 a=QEXdDO2ut3YA:10 X-Proofpoint-GUID: EQpIwNOwndqmv00SmQObbQUTur0Qb8MY X-Proofpoint-ORIG-GUID: EQpIwNOwndqmv00SmQObbQUTur0Qb8MY X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-09_03,2026-06-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 adultscore=0 phishscore=0 malwarescore=0 impostorscore=0 suspectscore=0 spamscore=0 clxscore=1011 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606090124 Remove obsolete tick delay heuristic [1]. The upcoming cpuidle driver handles frequent sleep/wakeup cycles more effectively. [1] https://lore.kernel.org/all/20090929122533.402715150@de.ibm.com/ Suggested-by: Heiko Carstens Signed-off-by: Mete Durlu --- arch/s390/include/asm/processor.h | 4 ---- arch/s390/kernel/idle.c | 1 - arch/s390/kernel/irq.c | 4 ---- arch/s390/kernel/smp.c | 1 - 4 files changed, 10 deletions(-) diff --git a/arch/s390/include/asm/processor.h b/arch/s390/include/asm/processor.h index 78195ee5e99f..3666198cc364 100644 --- a/arch/s390/include/asm/processor.h +++ b/arch/s390/include/asm/processor.h @@ -14,12 +14,10 @@ #include -#define CIF_NOHZ_DELAY 2 /* delay HZ disable for a tick */ #define CIF_ENABLED_WAIT 5 /* in enabled wait state */ #define CIF_MCCK_GUEST 6 /* machine check happening in guest */ #define CIF_DEDICATED_CPU 7 /* this CPU is dedicated */ -#define _CIF_NOHZ_DELAY BIT(CIF_NOHZ_DELAY) #define _CIF_ENABLED_WAIT BIT(CIF_ENABLED_WAIT) #define _CIF_MCCK_GUEST BIT(CIF_MCCK_GUEST) #define _CIF_DEDICATED_CPU BIT(CIF_DEDICATED_CPU) @@ -96,8 +94,6 @@ static __always_inline bool test_cpu_flag_of(int flag, int cpu) return test_bit(flag, &per_cpu(pcpu_devices, cpu).flags); } -#define arch_needs_cpu() test_cpu_flag(CIF_NOHZ_DELAY) - static inline void get_cpu_id(struct cpuid *ptr) { asm volatile("stidp %0" : "=Q" (*ptr)); diff --git a/arch/s390/kernel/idle.c b/arch/s390/kernel/idle.c index 1f1b06b6b4ef..8c63f440da2e 100644 --- a/arch/s390/kernel/idle.c +++ b/arch/s390/kernel/idle.c @@ -42,7 +42,6 @@ void noinstr arch_cpu_idle(void) /* Wait for external, I/O or machine check interrupt. */ psw_mask = PSW_KERNEL_BITS | PSW_MASK_WAIT | PSW_MASK_IO | PSW_MASK_EXT | PSW_MASK_MCHECK; - clear_cpu_flag(CIF_NOHZ_DELAY); set_cpu_flag(CIF_ENABLED_WAIT); if (smp_cpu_mtid) stcctm(MT_DIAG, smp_cpu_mtid, (u64 *)&idle->mt_cycles_enter); diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index d10a17e6531d..61d17954c34c 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -161,7 +161,6 @@ void noinstr do_io_irq(struct pt_regs *regs) if (from_idle) account_idle_time_irq(); - set_cpu_flag(CIF_NOHZ_DELAY); do { regs->tpi_info = get_lowcore()->tpi_info; if (get_lowcore()->tpi_info.adapter_IO) @@ -358,9 +357,6 @@ static irqreturn_t do_ext_interrupt(int irq, void *dummy) int index; ext_code.int_code = regs->int_code; - if (ext_code.code != EXT_IRQ_CLK_COMP) - set_cpu_flag(CIF_NOHZ_DELAY); - index = ext_hash(ext_code.code); rcu_read_lock(); hlist_for_each_entry_rcu(p, &ext_int_hash[index], entry) { diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c index 50bb499cf3e5..cd5ccbe3a18d 100644 --- a/arch/s390/kernel/smp.c +++ b/arch/s390/kernel/smp.c @@ -910,7 +910,6 @@ int __cpu_disable(void) cregs[6].val &= ~0xff000000UL; /* disable all I/O interrupts */ cregs[14].val &= ~0x1f000000UL; /* disable most machine checks */ __local_ctl_load(0, 15, cregs); - clear_cpu_flag(CIF_NOHZ_DELAY); return 0; } -- 2.54.0