From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (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 ED9693C3C07 for ; Fri, 7 Aug 2026 20:50:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786135858; cv=none; b=eLYYgvfFF12x4EhBPlb/rERGLuZYpjAm3NsJmjUQM/pfoX7LmaEQl3Gx+1L+xHT2K1vPplnAr5Kw/gKHhuAEbfDsBSscO2ieFb79Vyx8Remf7/BmENCeq4+z6j14DCHI1jbeveO9rmwd0K2/k8E1TCvcOIrBLnQ0qLn7biuN9vk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786135858; c=relaxed/simple; bh=eK6gxh0PrWK7VsKpmMgZQcl+aLVZeIwU2Ow4g4kNWbw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=VitF7ZtiJd4eOcPprxgByl9MChz+ecR3ygzicV4qZoCIxVmx88l96LH+pYT6vjwKZQIVXuvVuCjJBqrVe6OGMu1FjUj0hllJF5VnfA0wKH5tge6Sx8rsdIbUxTDi8/FaUxNhtTd7kq0Y1FLTZDuIT4U/yNipKRaCiTQ1FMX/uh8= 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=OFVN/0mc; arc=none smtp.client-ip=209.85.128.47 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="OFVN/0mc" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-495437bb891so21852245e9.1 for ; Fri, 07 Aug 2026 13:50:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786135855; x=1786740655; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=mN5O1Af9WzWgmjLRgH+EEsczjyxiiiTK5giyw6cTCX0=; b=OFVN/0mcI5LVdFPYIT/Fk2yo+40wPIKBQf8qwvBaFQUOyGIQWDjB4Wlmkrpuq9We/K VoxU+5NlCKeGRiR9Q5wLiwC9jr3xnzPboSLlZUKyczz1wsUB43qupjANjFxXCOLaYjcr 09+BBewBiRV+FfSlL+48ZJR1YHIcieX6NSAOHTd0kQ1ixVZZdjGpeJ1ooL/Qpo+koPh9 jPnAGqiHMKcAOBageYK3pVq4m8D+S5RmpVIgCzJuOT7QNHFeAiwrOuuzDgYSDJjgPPcd DLaRXjyu7BvdbXnk+WXRTFBYhwxlbdFVd2xZMsmbciR0OSXhaFY3Wl6lgtX4CZE01eb5 TC2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786135855; x=1786740655; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=mN5O1Af9WzWgmjLRgH+EEsczjyxiiiTK5giyw6cTCX0=; b=NB2aTeGRhJzsC6+Z/E7eVHCxiTPU1/T/YkL1W7l6wv5k6h6hg19X3rJ3Tc1ZsxWnU4 3/cqem484H8BhrMOaY0NSF6ScqFKQnVNcqts/e4qndft0XomFwLu4zTCVR1sEHIaGFaw ugWe1oS3gJmaqYgyP0Q80xgZaqtDoH5I0MwMeMxYUtY7pi/oFshmhQNlnQ3kZLk28BT9 hqkd5bsaMM3SF8hoikaD6Y4qHI2+BdbLAeaS4KVeA8HdIuGBtTL4Jn0PXldeLgRcvcRO o5i40SryfT8gJUzVbl7RObzTb/fkvAvtd1FCMmLEGAgIkDmPJBu4LFzG97BduBTYmhTr 5DpQ== X-Forwarded-Encrypted: i=1; AHgh+Ro8G7Nka75QcbIjcHo8jQU9JbCvAzq+qj8k9tCfvrifb0ZXPDhriI1bPL9kpEtxyB0cO8SCm/TTyMKvrvw=@vger.kernel.org X-Gm-Message-State: AOJu0YxEsgLM7baebpy0c7pMu9D1JT22EfMFhicDcucVykHRZeIXFzrk WKK1hNRwkwpxGjGamV2/5hPMSO+uIy2jh93S/HEl9qkbDW+A3FqnP1E+ X-Gm-Gg: AR+sD120Ke9YPAjjCXkiOEQfYXX2Cwm5LonERVNjC2/nyT1OOe+fqJdvtV5eBkv9zuh +GwU6OOi3oEyyT2VyOeaf+wI8aOqctROWwnMLkg06lWBYdJdrgHeX7nw4QfAGyYGaK1QPyVkt9i d3WxwuIdAfuybKyLNa4etCKLzh4I/UWIDtD6CFJBz3yUDEK6cruGRTbBU+9UvloKJ7YXLoTTdQv oys5X6rfSgKnNOoPkWOrJVpbFucO458j2OKxr/PV5Vb9e2sC1kz6KFiJQu6GB4jW8hTYSw3tyho nOUFhiNqmXltC8cA/6Qy+4faeTUeiny8rH9X38whXFCvfLAHSXSrYUfj93A47KdoyGouWI95Iu5 QOwRF2uBYHR9FYmsPbLuw8Binssi1kRVqmhBPfr4WlG78EwasEBZYFD1p+kcr+To+FyC6SoKYuY UcxRiBtwmckivMAFthzHdqhX4ACe49JcPzPaL+OPeYSaRGQugpFuhWdlrXNsLxfOhL+AbIvnooh I7i/VNF8SxGkX6gc2AQczJKFvj6A+XCGaCeNncztlzPwvmy3r0M54U6ZnuhqWtfjiX3/A3wB3UZ tfgtrOg+O30p45hrNFhxfyuUHIpLkxElt2cEVTMIDFjVRrHdJq7cBM4UsgBFCBZc5bM6 X-Received: by 2002:a05:600c:3154:b0:495:3bc6:d381 with SMTP id 5b1f17b1804b1-49962453c45mr12874425e9.2.1786135855016; Fri, 07 Aug 2026 13:50:55 -0700 (PDT) Received: from localhost.localdomain (dynamic-2a02-3100-b105-e101-a437-493a-4de9-ee3e.310.pool.telefonica.de. [2a02:3100:b105:e101:a437:493a:4de9:ee3e]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-499542851d6sm192408105e9.12.2026.08.07.13.50.53 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 07 Aug 2026 13:50:53 -0700 (PDT) From: Karl Mehltretter To: Andrew Morton Cc: Karl Mehltretter , Andrey Konovalov , Dmitry Vyukov , Alexander Potapenko , Marco Elver , Bradley Morgan , kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, Peter Zijlstra , Ingo Molnar , Juri Lelli , Vincent Guittot Subject: [PATCH 5/5] sched: pause KCOV in wake_up_new_task() Date: Fri, 7 Aug 2026 22:50:27 +0200 Message-Id: <20260807205027.31972-6-kmehltretter@gmail.com> X-Mailer: git-send-email 2.39.5 (Apple Git-154) In-Reply-To: <20260807205027.31972-1-kmehltretter@gmail.com> References: <20260807205027.31972-1-kmehltretter@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit wake_up_new_task() is uninstrumented, but CPU selection and enqueue call instrumented helpers. During a KCOV-enabled fork, they can record scheduler, hrtimer and clockevent coverage into the parent. The paths depend on runqueue and CPU state, so coverage varies between identical forks. Pause KCOV for the whole function, extending the scheduler exclusion to new-task wakeups. Fixes: 5c9a8750a640 ("kernel: add kcov code coverage") Assisted-by: Claude:claude-opus-4-8 Signed-off-by: Karl Mehltretter --- kernel/sched/core.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 1e562a7ff0afb..cad1b01063450 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -4945,8 +4945,12 @@ void wake_up_new_task(struct task_struct *p) { struct rq_flags rf; struct rq *rq; + unsigned int kcov_paused; int wake_flags = WF_FORK; + /* KCOV: sched/ is uninstrumented but the wakeup callees are not. */ + kcov_paused = kcov_pause(current); + raw_spin_lock_irqsave(&p->pi_lock, rf.flags); WRITE_ONCE(p->__state, TASK_RUNNING); /* @@ -4976,6 +4980,7 @@ void wake_up_new_task(struct task_struct *p) rq_repin_lock(rq, &rf); } task_rq_unlock(rq, p, &rf); + kcov_resume(current, kcov_paused); } #ifdef CONFIG_PREEMPT_NOTIFIERS -- 2.53.0