[PATCH v1] fix compiling warning

Zhu Zhongjie zhongjiezhu1 at gmail.com
Mon Jan 16 08:36:54 UTC 2023


From: Zhongjie Zhu <zhongjiezhu1 at gmail.com>

there are different cases for _ISR_lock_ISR_disable() and _ISR_lock_ISR_enable()
in the case RTEMS_SMP is defined or RTEMS_PROFILING is defined, so remove the related code.

../../../cpukit/include/rtems/score/threaddispatch.h: In function '_Thread_Dispatch_disable':
../../../cpukit/include/rtems/score/threaddispatch.h:231:14: warning: 'lock_context' may be used uninitialized [-Wmaybe-uninitialized]
  231 |   cpu_self = _Thread_Dispatch_disable_critical( &lock_context );
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../cpukit/include/rtems/score/threaddispatch.h:210:32: note: by argument 1 of type 'const ISR_lock_Context *' to '_Thread_Dispatch_disable_critical' declared here
  210 | static inline Per_CPU_Control *_Thread_Dispatch_disable_critical(
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../cpukit/include/rtems/score/threaddispatch.h:225:21: note: 'lock_context' declared here
  225 |   ISR_lock_Context  lock_context;
      |                     ^~~~~~~~~~~~
---
 cpukit/include/rtems/score/threaddispatch.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/cpukit/include/rtems/score/threaddispatch.h b/cpukit/include/rtems/score/threaddispatch.h
index 589935823f..b06ebe8fec 100644
--- a/cpukit/include/rtems/score/threaddispatch.h
+++ b/cpukit/include/rtems/score/threaddispatch.h
@@ -222,16 +222,17 @@ static inline Per_CPU_Control *_Thread_Dispatch_disable_critical(
 static inline Per_CPU_Control *_Thread_Dispatch_disable( void )
 {
   Per_CPU_Control  *cpu_self;
-  ISR_lock_Context  lock_context;
 
 #if defined( RTEMS_SMP ) || defined( RTEMS_PROFILING )
+  ISR_lock_Context  lock_context;
+
   _ISR_lock_ISR_disable( &lock_context );
-#endif
 
   cpu_self = _Thread_Dispatch_disable_critical( &lock_context );
 
-#if defined( RTEMS_SMP ) || defined( RTEMS_PROFILING )
   _ISR_lock_ISR_enable( &lock_context );
+#else
+  cpu_self = _Thread_Dispatch_disable_critical( NULL );
 #endif
 
   return cpu_self;
-- 
2.34.1



More information about the devel mailing list