[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251112111051.826922-1-srikar@linux.ibm.com>
Date: Wed, 12 Nov 2025 16:40:50 +0530
From: Srikar Dronamraju <srikar@...ux.ibm.com>
To: linuxppc-dev@...ts.ozlabs.org
Cc: Christophe Leroy <christophe.leroy@...roup.eu>,
linux-kernel@...r.kernel.org,
Madhavan Srinivasan <maddy@...ux.ibm.com>,
Michael Ellerman <mpe@...erman.id.au>,
Nicholas Piggin <npiggin@...il.com>,
Srikar Dronamraju <srikar@...ux.ibm.com>
Subject: [PATCH 1/2] pseries/dtl: Use counter in !native case too
Currently dtl_count is only under CONFIG_VIRT_CPU_ACCOUNTING_NATIVE.
Its used to track and clear dtl_consumer callback.
Going forward will be using this counter to track if dtl is in-use across
configs. Hence adding its use in !CONFIG_VIRT_CPU_ACCOUNTING_NATIVE case
too.
Signed-off-by: Srikar Dronamraju <srikar@...ux.ibm.com>
---
arch/powerpc/platforms/pseries/dtl.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/platforms/pseries/dtl.c b/arch/powerpc/platforms/pseries/dtl.c
index f293588b8c7b..6c95781cafb7 100644
--- a/arch/powerpc/platforms/pseries/dtl.c
+++ b/arch/powerpc/platforms/pseries/dtl.c
@@ -36,6 +36,8 @@ static u8 dtl_event_mask = DTL_LOG_ALL;
* not cross a 4k boundary.
*/
static int dtl_buf_entries = N_DISPATCH_LOG;
+static atomic_t dtl_count;
+
#ifdef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
@@ -56,8 +58,6 @@ struct dtl_ring {
static DEFINE_PER_CPU(struct dtl_ring, dtl_rings);
-static atomic_t dtl_count;
-
/*
* The cpu accounting code controls the DTL ring buffer, and we get
* given entries as they are processed.
@@ -158,7 +158,7 @@ static int dtl_start(struct dtl *dtl)
/* enable event logging */
lppaca_of(dtl->cpu).dtl_enable_mask = dtl_event_mask;
-
+ atomic_inc(&dtl_count);
return 0;
}
@@ -169,6 +169,7 @@ static void dtl_stop(struct dtl *dtl)
lppaca_of(dtl->cpu).dtl_enable_mask = 0x0;
unregister_dtl(hwcpu);
+ atomic_dec(&dtl_count);
}
static u64 dtl_current_index(struct dtl *dtl)
--
2.43.7
Powered by blists - more mailing lists