This is an automated email from the ASF dual-hosted git repository. acassis pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit 1b58a449c57ec586661887c5bde731e2571c1884 Author: wangchengdong <[email protected]> AuthorDate: Thu Nov 13 17:26:31 2025 +0800 sched/clock: Make g_system_ticks a static variable Make g_system_ticks a static variable, as it is only accessed by clock_get_sched_ticks(). This change improves code modularity and enhances safety, since clock_get_sched_ticks() performs proper synchronization when reading g_system_ticks. Signed-off-by: Chengdong Wang [email protected] --- include/nuttx/clock.h | 12 ------------ sched/clock/clock.h | 8 -------- sched/clock/clock_initialize.c | 2 -- sched/clock/clock_sched_ticks.c | 6 ++++++ 4 files changed, 6 insertions(+), 22 deletions(-) diff --git a/include/nuttx/clock.h b/include/nuttx/clock.h index dafe1d79b3d..140f3c39f08 100644 --- a/include/nuttx/clock.h +++ b/include/nuttx/clock.h @@ -324,18 +324,6 @@ extern "C" #define EXTERN extern #endif -/* Access to raw system clock ***********************************************/ - -/* Direct access to the system timer/counter is supported only if (1) the - * system timer counter is available (i.e., we are not configured to use - * a hardware periodic timer), and (2) the execution environment has direct - * access to kernel global data - */ - -#ifdef __HAVE_KERNEL_GLOBALS -EXTERN volatile clock_t g_system_ticks; -#endif - /**************************************************************************** * Public Function Prototypes ****************************************************************************/ diff --git a/sched/clock/clock.h b/sched/clock/clock.h index cd9a3c9d42e..dee8d848ee7 100644 --- a/sched/clock/clock.h +++ b/sched/clock/clock.h @@ -61,14 +61,6 @@ * Public Data ****************************************************************************/ -#if !defined(__HAVE_KERNEL_GLOBALS) - /* The system clock exists (CONFIG_SCHED_TICKLESS), but it not prototyped - * globally in include/nuttx/clock.h. - */ - -extern volatile clock_t g_system_ticks; -#endif - #ifndef CONFIG_CLOCK_TIMEKEEPING extern struct timespec g_basetime; extern spinlock_t g_basetime_lock; diff --git a/sched/clock/clock_initialize.c b/sched/clock/clock_initialize.c index 490dfccc071..36f1749d5d3 100644 --- a/sched/clock/clock_initialize.c +++ b/sched/clock/clock_initialize.c @@ -51,8 +51,6 @@ * Public Data ****************************************************************************/ -volatile clock_t g_system_ticks = INITIAL_SYSTEM_TIMER_TICKS; - #ifndef CONFIG_CLOCK_TIMEKEEPING struct timespec g_basetime; spinlock_t g_basetime_lock = SP_UNLOCKED; diff --git a/sched/clock/clock_sched_ticks.c b/sched/clock/clock_sched_ticks.c index 0635a5d4b84..9836ae50290 100644 --- a/sched/clock/clock_sched_ticks.c +++ b/sched/clock/clock_sched_ticks.c @@ -34,6 +34,12 @@ #include "clock/clock.h" +/**************************************************************************** + * Private Data + ****************************************************************************/ + +static volatile clock_t g_system_ticks = INITIAL_SYSTEM_TIMER_TICKS; + /**************************************************************************** * Public Functions ****************************************************************************/
