From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) (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 15F48412294 for ; Thu, 13 Aug 2026 06:00:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786600804; cv=none; b=CtilX6qOS2bzpCShAyuPGJaIwH6KgItIY4a3IMdwQXsQ2fN1m6tXbH8KYvlDDZLStdWGuPCXmeyxKojO9LFK1pCLgHf5z+wxjA8ihkG2GzLI0X/24bPnAtvtWgllJ9gAEJRxdoMLaNtWYno5cFA+oinuHwmLsRAYcRYydDca5qQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786600804; c=relaxed/simple; bh=dadrcgxZ2VGij7TkJpN8P7nmgIBrCVXfpHR/o0agZ0k=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=CRL7YfOD0n4I2SBsZ3uRkQb8E6f7SO3iYhrexiYIQC1dT9fNim91JyeEpaPuuuCiYcwLW0TcOSnl4jKMBsLXDop2b30NIPcZHMWkN0rf5wBlPlngfBcAxvxTGGSN8Ep7zKfLVVmGYjFyWzrEw2MiAyqh51x+PFgewTm2GV9MX8w= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=BXyEvl9F; arc=none smtp.client-ip=209.85.221.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="BXyEvl9F" Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-47f7872abb6so772149f8f.3 for ; Wed, 12 Aug 2026 23:00:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786600801; x=1787205601; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to:content-type; bh=YfObPab6712OhhB848BHWwyLub6SBCc6jSsmm/kgkes=; b=BXyEvl9F9jXkjqyphxalM5uWYfEWN0mn+ynD07HvfzfaWSZDOjk2m4oB9bjbKPtmAt 9i8WDCvPzTQFReOq3A16sgDdGpSwhs4eS4FBV7qnit35rKkzLN7t5PHJaVR9qBgOZ/5c Cdlpp+gVuqFolbcRDoShJaNwZcwjxZ47s6SbdafKysbh6VQq4jE0Vvqivu2NsmbWW1Y+ pkTRkUN9ET6UzZMFU0AO8FMthdJyjpFrigHas91JwmD/mXpWoKkHuolysHjBYLm0mtxS C/1Tnx9B5crfFFkgXQVc2kBCejtOAQDEROSD+8c9Q+uwqc6yKyehuK/5IZx5MA8qWSdb 4y3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786600801; x=1787205601; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=YfObPab6712OhhB848BHWwyLub6SBCc6jSsmm/kgkes=; b=kNi2+S+p0/iQs6rz9e/fTSe6uCQdxoJPQe/vqdVdw0XMAunMcZi/vvbgnqd2uLpKLS lf4mlMAXGCLu8aR8aMDoqNUpw0g1U6uEJ5lmbU+f3HFYkChztuwpH5poJZBtaQZrHFaC gFsdBPdLeypcyKxdS1gL9hpcMrK4MC1J/NRrFV9u4OO7A6S9l0lFlIS1Ms9YyhGci8Wx NJh2yC9iYkg4eL9mhVX/MJsr4pCWTeH6SqfOWQWUl1StNQgTSGTXdq56kWG+JAmx6ugw UgZpAN38OvwX2SNDP9Wmv95o2QhoDH6LYIhVKJqn+uH8i4IZJfi0uyrDRmimCifCO0LB Jhyg== X-Forwarded-Encrypted: i=1; AHgh+Rpz3Q3fBT/2V/CEJOS4yh+WyaIsWU1E7lGqcuNAfN2Fv5Xxunpd9ZQaoilv4l8tdQdt5ah6k4z+zcEdnrA=@vger.kernel.org X-Gm-Message-State: AOJu0YxKoKU2Q2HC2/tV3UPn1oz5IBwCjH0rpepkum2Cr2/umul+oric JR52kSL3k1m0yeRy540MavbJEhz4Tvck55opP8VFc5N4N39tgi9JRXJv X-Gm-Gg: AR+sD10NytPwwPVlF1mfdWrfTmbJnFUpY2x2OQeQt0gNlH2KuGoAoOXGpyOzPQS1n4N jyiCUiTeJZXf1l0kpFbEyPqESUmjbNFlTn3aexICg++U1r9uc9JEPTPeFgv+Qb3vESx6WD03K+K RMP5auj/gmMdCjm0smXrBrX6j8zhtrtxABvXy2jb/E377TUc+ugZ4qiyMs/t4C8Lt5OR4pbdDOc 0y5LIWMf3GYkGB/RbTsxatqK+kmHIUYdRvUVHziBzbp2XATwwzy1y/F83bf36E3/z0760m/05FK 4IahlXmajSuKJdvtFz310oNIQnQUY0P0tE6U7JOcrDv+YjKBoMSd+GSn3v5VzoNaahY7kkbWXFM vq5Gdf1bX4EOzx+cqlBh8Xlu6hquTWiaSZ+ceE8TcX7vHa/+eGRJZdCdTyLHNqVRyDAtEIXa2WM +F0H/8TkdtrH+tb1MO3YsdIvwIaSHGLatjG9saneUppXwzPajvGXf19KJ52FRus9GtSFjsXxG2i U1l7X+Zbw5Vt2AX+u3ee2z5jj8ouGJEYyKm1dl0oGKHnjM3ttMk7BnRMJQ3lEEA01otWoVg6FXW wh0q6fDrQrGTP0KXI2/P6JEsX63ZW8Ri91xDS8bi4LVGUG6biDoLWwixDj8C62FXa+E= X-Received: by 2002:a05:6000:3104:b0:47f:773f:2d68 with SMTP id ffacd0b85a97d-48159eea061mr4408522f8f.16.1786600801086; Wed, 12 Aug 2026 23:00:01 -0700 (PDT) Received: from MacBook-Pro-von-Karl (dynamic-2a02-3100-9c79-1f01-1565-573d-10dc-99f9.310.pool.telefonica.de. [2a02:3100:9c79:1f01:1565:573d:10dc:99f9]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4815a5af4b2sm3155862f8f.17.2026.08.12.22.59.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Aug 2026 23:00:00 -0700 (PDT) Date: Thu, 13 Aug 2026 07:59:57 +0200 From: Karl Mehltretter To: Peter Zijlstra Cc: Andrew Morton , Andrey Konovalov , Alexander Potapenko , Dmitry Vyukov , Marco Elver , Bradley Morgan , Anna-Maria Behnsen , Frederic Weisbecker , Thomas Gleixner , Ingo Molnar , Juri Lelli , Vincent Guittot , Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , K Prateek Nayak , Sebastian Andrzej Siewior , Clark Williams , linux-rt-devel@lists.linux.dev, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 3/6] hrtimer: Pause KCOV during deferred rearm Message-ID: References: <20260811154111.64669-1-kmehltretter@gmail.com> <20260811154111.64669-4-kmehltretter@gmail.com> <20260812102100.GF776954@noisy.programming.kicks-ass.net> 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=us-ascii Content-Disposition: inline In-Reply-To: <20260812102100.GF776954@noisy.programming.kicks-ass.net> On Wed, Aug 12, 2026 at 12:21:00PM +0100, Peter Zijlstra wrote: > > Deferred hrtimer rearm can run after HARDIRQ_OFFSET is dropped. in_task() > > is then true, so KCOV attributes the instrumented timer-reprogramming > > subtree to current. > > But that is clearly noinstr code; there should be no kcov calls in > there. > > If kcov is emitted inside noinstr, then kcov is a broken piece of crap > and needs to die. > > NAK Thanks for the review! By "instrumented" I meant KCOV-instrumented. The selftest callback comes from __hrtimer_rearm_deferred() in ordinary .text, not .noinstr.text. On x86, irq_exit_rcu() runs in an instrumentable IDT-entry region. __irq_exit_rcu() subtracts hardirq offset before calling hrtimer_rearm_deferred(), so check_kcov_mode() sees in_task() and records callee coverage for current. This is the same class of failure as 477d81a1c47a ("x86/entry: Remove unwanted instrumentation in common_interrupt()"). There the hardirq offset had not yet been added, here it has already been removed. Its callee could be inlined. Deferred rearm instead reaches shared hrtimer, tick, clockevent and architecture code. Statically excluding the graph would be pervasive and also lose coverage from ordinary task context. Do you want deferred rearm and its complete call graph converted to noinstr, or merely built without KCOV instrumentation? Thanks, Karl