[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] xen/sched: rtds: re-arm repl_timer after timer re-initialization
- To: Jan Beulich <jbeulich@xxxxxxxx>
- From: Oleksii Moisieiev <oleksii_moisieiev@xxxxxxxx>
- Date: Wed, 1 Apr 2026 17:37:52 +0300
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7nC86ZtymT+iTFCiexayQuOfNvhH+tl0LE0fjBfesSY=; b=Dz+2RIuTkM8oyP+KLX+x8FR6XuWQ4uB/VGtuF2uQ0LrLSm0w3gUMKzc29yOHYKwH+ZTeGxdFodHtm0yiTXcM7YxeOIamP6hxD04bePQBfWrfCe6fkkHQ5uUZ4w1yR1WarkpB0swpVNQpdGzwqatE3GUlchWqUoeAYjSkrQyQuzvk/DXzLwJ/RM1A6DchLKTn1Xbdiy0uDO3Fw24+pX90ERsKcPrFNT7D2BTfNP2B7s6gbmXk9f6lwl6KbpDEfaQxVG/omVE2cbOYANFi1TxESa0bhMN1eEc3DqMs/YoDPEXoGZequ2yMzSWL1j/DBhoITLTY8tUjRgihH4FiHgd7yw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Dn2AdhOVN0I3ENJgKZcTPH1ZRoi4XnRkzaNDloenjZ7CYBmtaZIDcOB/BbWm183iRmeolxuFgA1CigAVFBN7F0akwQMw4ySPM43yJdv+O3DsU/+9u6XmsTdTiafXArA5pTI3wLE2wJDOuZh+bQw3hua976xGlcdu6cwbxLmq7lyZuNjXy9MSFP/9lJwd2OWsjBWkszo9PwOOLEjDFfEr5usK4lnrLLeOQbKz3t6epNXj8gNVCeFLXrngJqWkGHP5ynBV8TLKPz7zyM9Ty/a25dzJGZQ7+1Gop4o0Q70LAWBcUvCw0nhpiUCtLpcbWMMZ2E+wGw2DJFHEPw1E2Zskrg==
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=epam.com header.i="@epam.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
- Cc: Dario Faggioli <dfaggioli@xxxxxxxx>, George Dunlap <gwd@xxxxxxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Meng Xu <mengxu@xxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- Delivery-date: Wed, 01 Apr 2026 14:38:07 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 01/04/2026 17:31, Jan Beulich wrote:
On 01.04.2026 16:28, Oleksii Moisieiev wrote:
In RTDS, removing the last eligible pCPU can kill repl_timer.
When a pCPU is later re-added, rt_switch_sched() reinitializes the
timer object, but pending entries may already exist in replq.
Without re-arming from replq head, replenishment can remain inactive
until some unrelated event programs the timer again. This may stall
budget replenishment for non-extratime units.
Fix this by re-arming repl_timer in rt_switch_sched() immediately after
init_timer() when replq is non-empty, using the earliest pending
deadline.
This keeps behavior unchanged when replq is empty.
Add a lightweight regression script,
test_rtds_repl_timer_rearm.sh, to verify source-level guards and model
the expected re-arm decision logic.
Signed-off-by: Oleksii Moisieiev <oleksii_moisieiev@xxxxxxxx>
What is this last (improperly separated from the S-o-b) paragraph about?
No ...
Sry for that. this leftover from squashing... Will remove. Made a unit
tests to check the behavior.
---
xen/common/sched/rt.c | 9 +++++++++
1 file changed, 9 insertions(+)
... new script is being introduced.
Jan
|