[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 08/19] xen/sysctl: wrap around XEN_SYSCTL_lockprof_op
- To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: Penny Zheng <Penny.Zheng@xxxxxxx>
- Date: Wed, 26 Mar 2025 13:50:42 +0800
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0)
- 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=DkPzVb9EWJAVFmOTUhFIe6Bwd7eu9nzSdd6u4mcgRpM=; b=pIwXy10+/tOlQHqNTMzgbql/EnSPic4JHoe4s9MHcobvBZwc/WK8IWKWHQVTN3wONLGm0hNZmgn14Ff7OYeeMMeyLTpQ6BH7NfoL/f2A+g6phWXDRdrkIlTRisog6IcIFGJbYiP0Vz0IknXVb2d8KUrL78e/noFDj6u+CArtnrqHNSa6XUoGu0g3nP0vUpXGVrLybX+2xCvqA007Sb7G1RSp7DPDLFcV/6F6PX128de64b1X8KfIWMuPEIj3/QKNK0e1XgIt6TrgeoOyDuYd/qhUDPy6sOJx6RZN1Vb06wmcNihrlY3+bL470c3Qt7MQlDRhDKv7zb2ptWcEnX9F0g==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wYDLBBKTy7OF9vW/vqXUCw3fmr7nJPc9O47o7fOmfg+/ENsiFzcZxA+rwxeCCaU95BcnAJXlEVsXWkELvG/6TS1el0P0vy9lUXctNkbSAuI6TT3FWLqWtfLTn1rwJAkTL7Bu+MSk+bR5m7DDQ9q08AWujiidIsdot2rsmp9zAFp9ZvEef5EB2FlBJW4AULfGVUySb1m5lv2FQkCA7i0YGflxZNvMJDgzi0rHm8gtoj8qfqONIYe3n/NhVyEVCLRZ/c/3LsZJE/PYDPK1V33LrsWYSnHHeieeOWQx4+4Q1N31GSuKy4fPBCq4YRghgaBTTNvYeBGatL5KNEetH0OvSg==
- Cc: <ray.huang@xxxxxxx>, Penny Zheng <Penny.Zheng@xxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, "Julien Grall" <julien@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>
- Delivery-date: Wed, 26 Mar 2025 06:01:32 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
The following function is only to serve spinlock profiling via
XEN_SYSCTL_lockprof_op, so it shall be wrapped:
- spinlock_profile_control
Signed-off-by: Penny Zheng <Penny.Zheng@xxxxxxx>
---
v1 -> v2:
- add transient #ifdef in sysctl.c for correct compilation
---
xen/common/spinlock.c | 2 ++
xen/common/sysctl.c | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/xen/common/spinlock.c b/xen/common/spinlock.c
index 38caa10a2e..0389293b09 100644
--- a/xen/common/spinlock.c
+++ b/xen/common/spinlock.c
@@ -690,6 +690,7 @@ void cf_check spinlock_profile_reset(unsigned char key)
spinlock_profile_iterate(spinlock_profile_reset_elem, NULL);
}
+#ifdef CONFIG_SYSCTL
typedef struct {
struct xen_sysctl_lockprof_op *pc;
int rc;
@@ -749,6 +750,7 @@ int spinlock_profile_control(struct xen_sysctl_lockprof_op
*pc)
return rc;
}
+#endif /* CONFIG_SYSCTL */
void _lock_profile_register_struct(
int32_t type, struct lock_profile_qhead *qhead, int32_t idx)
diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c
index 0da82d6e31..4602d84203 100644
--- a/xen/common/sysctl.c
+++ b/xen/common/sysctl.c
@@ -123,13 +123,13 @@ long do_sysctl(XEN_GUEST_HANDLE_PARAM(xen_sysctl_t)
u_sysctl)
ret = perfc_control(&op->u.perfc_op);
break;
#endif
-#endif /* CONFIG_SYSCTL */
#ifdef CONFIG_DEBUG_LOCK_PROFILE
case XEN_SYSCTL_lockprof_op:
ret = spinlock_profile_control(&op->u.lockprof_op);
break;
#endif
+#endif /* CONFIG_SYSCTL */
case XEN_SYSCTL_debug_keys:
{
char c;
--
2.34.1
|