From nobody Tue May 26 04:50:51 2026 Received: from fhigh-a6-smtp.messagingengine.com (fhigh-a6-smtp.messagingengine.com [103.168.172.157]) (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 08CA8402431 for ; Tue, 12 May 2026 05:56:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.157 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778565419; cv=none; b=PmMTVfJLo5waMWlMNZp0GrTyWv9Vnnw2HSwggc+ikM8oJSKch355B684bOfGPWHOuS9M9FQvGXIzi3r8kHQ6G598nY8mkg5ZsVTt1QBFEw/OraVPttL7W4PoxfJ0OJrRrEGMe2v9C7mPcX2luekx4sxrPsp+cIJASOq5d5GeKIQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778565419; c=relaxed/simple; bh=PEVkDx+h6dAL4n1ODSOCOw2//wltqWTU9G012mXgXmQ=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=QfYztDWb2i/HYGa+jRhrAmkMR7qCE0Io+FZpAU1y8bSFHKSP+Siyoa97Wlr2Gc8+xtNpewbsbC9i2+ti0UZmPF1FZ7FlHG9mzO9gfuBNMKGZaP3mXTHsDgPrWZqE4Zlk0s6DYkQxYSy08Yh9Og8cdW1tvEqUycjbsTjGdxD5Sbs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=likewhatevs.io; spf=pass smtp.mailfrom=likewhatevs.io; dkim=pass (2048-bit key) header.d=likewhatevs.io header.i=@likewhatevs.io header.b=0sh1lprz; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=TEx8f8h3; arc=none smtp.client-ip=103.168.172.157 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=likewhatevs.io Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=likewhatevs.io Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=likewhatevs.io header.i=@likewhatevs.io header.b="0sh1lprz"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="TEx8f8h3" Received: from phl-compute-09.internal (phl-compute-09.internal [10.202.2.49]) by mailfhigh.phl.internal (Postfix) with ESMTP id 8F4BE14000D7; Tue, 12 May 2026 01:56:41 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-09.internal (MEProxy); Tue, 12 May 2026 01:56:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=likewhatevs.io; h=cc:cc:content-transfer-encoding:content-type:date:date:from :from:in-reply-to:message-id:mime-version:reply-to:subject :subject:to:to; s=fm2; t=1778565401; x=1778651801; bh=MfRm5BoSWZ Zb0f/8pACjmHoh2eNoR97DUSZE8LG7Abc=; b=0sh1lprzMNscveLCtJUC4WLHRu mRIQQRqeJ4/wlNxKOkMtzA8E/HRPy6PsUtWjDko0zdOfWqbZAM6/w/JyWtEfQLTE LthXrqJMpt7WP71WbPt76E3WXBUy08nuWus0iUWDxCy2epZB7g6enjlt9N5GfDk/ e+AnNyAbJmvtE8qBFBa5rSY6cOBz2o34kAkyEZPCROSqd7RaEcAWaf9Wv8seV0m6 GYBvRPSyEvkAtWKJ39lofOogAU3Cb2CGA0ECwFdC6rKmoMGh+jueFZ6J/jpMXNWW d+q2972AvaO+w/mDh6X/njuEkubpFKCvileB+fO7jsMtH3w9I4QuAXxm5Hsw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:message-id:mime-version:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1778565401; x=1778651801; bh=MfRm5BoSWZZb0f/8pACjmHoh2eNoR97DUSZ E8LG7Abc=; b=TEx8f8h3kThmBTsHAUa1wnWNiFsp1lF3hexppRcS0Z27DpF+Qd5 C2jKekCFk9/XmTd3hFzK1Cfjp6l7oc12dm4AG5Mfu2+H2PFkCNeiyjwRjeTrTcna 1o6GZWOX8LGXI88FcmdKRhFgAnf6+mypszX0odc886jCB9Dxq4sgkfK11ncLECne XRTUJy9RXt4dPx80Lavhvp1V/g54aQODKCB6ebfUTbWzjrn4LxNNnVHWaPyPxoCn EqMiGkgHi8kz68Ng7BXPMWH6swh/sqaGuy5cQLpP8Hjft+8DIj2xtP/dcHv+Ksi/ 5YbeMoUP6VOGVSAxOY9REnfJ3evvj3yCUWw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefhedrtddtgdduvddutddvucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucenucfjughrpefhvfevufffkffoggfgsedtkeertdertd dtnecuhfhrohhmpefrrghtucfuohhmrghruhcuoehprghtshhosehlihhkvgifhhgrthgv vhhsrdhioheqnecuggftrfgrthhtvghrnhepfeevieevieejgfeutedtjeelleeifedvtd ekkeduudevteevuedtheffieeuhedunecuvehluhhsthgvrhfuihiivgeptdenucfrrghr rghmpehmrghilhhfrhhomhepphgrthhsoheslhhikhgvfihhrghtvghvshdrihhopdhnsg gprhgtphhtthhopeegpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopehtjheskhgv rhhnvghlrdhorhhgpdhrtghpthhtohepshgthhgvugdqvgigtheslhhishhtshdrlhhinh hugidruggvvhdprhgtphhtthhopehlihhnuhigqdhkvghrnhgvlhesvhhgvghrrdhkvghr nhgvlhdrohhrghdprhgtphhtthhopehprghtshhosehlihhkvgifhhgrthgvvhhsrdhioh X-ME-Proxy: Feedback-ID: i7f194913:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 12 May 2026 01:56:41 -0400 (EDT) From: Pat Somaru To: Tejun Heo Cc: sched-ext@lists.linux.dev, linux-kernel@vger.kernel.org, Pat Somaru Subject: [PATCH] sched_ext: Add tracepoint for scheduler exit Date: Tue, 12 May 2026 01:56:32 -0400 Message-ID: <20260512055632.1096713-1-patso@likewhatevs.io> X-Mailer: git-send-email 2.54.0 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" sched_ext schedulers have state in BPF programs and kernel. scx_dump provides kernel state and BPF program state on error, but this is static in what it can provide. Add a sched_ext_exit tracepoint in scx_claim_exit() so that BPF programs can dynamically inspect scheduler specific state at the moment of exit. Signed-off-by: Pat Somaru --- include/trace/events/sched_ext.h | 19 +++++++++++++++++++ kernel/sched/ext.c | 2 ++ 2 files changed, 21 insertions(+) diff --git a/include/trace/events/sched_ext.h b/include/trace/events/sched_= ext.h index d1bf5acd59c5..9ccf884919c1 100644 --- a/include/trace/events/sched_ext.h +++ b/include/trace/events/sched_ext.h @@ -84,6 +84,25 @@ TRACE_EVENT(sched_ext_bypass_lb, ) ); =20 +TRACE_EVENT(sched_ext_exit, + + TP_PROTO(__u32 kind), + + TP_ARGS(kind), + + TP_STRUCT__entry( + __field(__u32, kind) + ), + + TP_fast_assign( + __entry->kind =3D kind; + ), + + TP_printk("kind %u", + __entry->kind + ) +); + #endif /* _TRACE_SCHED_EXT_H */ =20 /* This part must be outside protection */ diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c index 64f8a096f133..0219b11bb9d1 100644 --- a/kernel/sched/ext.c +++ b/kernel/sched/ext.c @@ -6200,6 +6200,8 @@ static bool scx_claim_exit(struct scx_sched *sch, enu= m scx_exit_kind kind) */ WRITE_ONCE(sch->aborting, true); =20 + trace_sched_ext_exit(kind); + /* * Propagate exits to descendants immediately. Each has a dedicated * helper kthread and can run in parallel. While most of disabling is --=20 2.54.0