On Wed, Apr 22, 2020 at 8:06 AM Richi Dubey <richidu...@gmail.com> wrote:
> Dear Dr. Joel, > > Thank you for your reply. I did a grep on the root rtems folder and I came > to know that ISR_LOCK_INITIALIZER is being used by intr.h and isrlock.h > inside leon3's include directory. It includes various macros like : > > #if defined( RTEMS_SMP ) > #define ISR_LOCK_INITIALIZER( _name ) \ > > and > > #define RTEMS_INTERRUPT_LOCK_INITIALIZER( _name ) ISR_LOCK_INITIALIZER( > _name ) > > I couldn't find the implementation of the function ISR_LOCK_INITIALIZER( > ) anywhere. Is there a isrlock.c present somewhere? I couldn't find any > helpful references for RTEMS_INTERRUPT_LOCK_INITIALIZER too. Am i missing > something? > If you are building without SMP enabled, then this should fix it. The parameter _name is clearly not used unless you have SMP enabled. the code I added is an accepted idiom for telling the compiler a variable or parameter is used for its analysis purposes. Does this make sense? diff --git a/cpukit/include/rtems/score/isrlock.h b/cpukit/include/rtems/score/i index 14ea88b..52645a3 100644 --- a/cpukit/include/rtems/score/isrlock.h +++ b/cpukit/include/rtems/score/isrlock.h @@ -147,7 +147,7 @@ typedef struct { { SMP_LOCK_INITIALIZER( _name ) } #else #define ISR_LOCK_INITIALIZER( _name ) \ - { } + { (void) (_name); } #endif /** > > Please let me know. > > Thanks, > Richi. > > > > On Sun, Apr 19, 2020 at 10:52 PM Joel Sherrill <j...@rtems.org> wrote: > >> >> >> On Sun, Apr 19, 2020, 9:59 AM Richi Dubey <richidu...@gmail.com> wrote: >> >>> Hey everyone, >>> >>> In the Covid Code-in update by Dr. Joel, he mentioned that the RTEMS >>> could use some help to remove warnings from the code. In the link( >>> https://ftp.rtems.org/pub/rtems/people/joel/warnings/warnings-5-20200408/warnings-all-5-20200408.txt) >>> of warnings for RTEMS 5, one of the warning is: >>> >>> log/sparc-leon3.log:../../../../../../rtems/c/src/../../testsuites/sptests/sp37/init.c:172:21: >>> warning: unused variable 'name' [-Wunused-variable] >>> log/sparc-leon3.log:../../../../../../rtems/c/src/../../testsuites/sptests/sp37/init.c:172:21: >>> warning: 'name' defined but not used [-Wunused-const-variable=] >>> >>> >>> On opening init.c from ~/quick-start/src/rtems/testsuites/sptests/sp37/. >>> Lines 172 to 175 are: >>> >>> static const char name[] = "test"; >>> ISR_Level normal_interrupt_level = _ISR_Get_level(); >>> ISR_lock_Control initialized = ISR_LOCK_INITIALIZER( name ); >>> ISR_lock_Control zero_initialized; >>> >>> We can see that the name variable is being used in line 174(and later on >>> 3 more times, outside any conditional blocks). Why would Dr. Joel get such >>> a warning then? >>> >> >> Does ISR_LOCK_INITIALIZER actually use the name? It possibly only uses >> it when RTEMS_DEBUG is enabled. Check that. >> >>> >>> Thanks, >>> Richi. >>> _______________________________________________ >>> devel mailing list >>> devel@rtems.org >>> http://lists.rtems.org/mailman/listinfo/devel >> >>
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel