Merge request https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/516 
was reviewed by Kinsey Moore

--
  
Kinsey Moore started a new discussion on cpukit/include/rtems/libio_.h: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/516#note_125037

 > + * ignore the request.
 > + */
 > +static inline void rtems_libio_free(

This might be better named as `rtems_libio_try_free` since the attempt is made 
with caveats. The description above helps with the understanding, but I will 
forget this nuance when reading it in the codebase any more than 2 weeks from 
now.

--
  
Kinsey Moore started a new discussion on cpukit/include/rtems/libio_.h: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/516#note_125038

 > +  const unsigned int flags = rtems_libio_iop_flags( iop );
 > +  if ( ( ( flags & LIBIO_FLAGS_OPEN ) == 0 )
 > +       && ( ( flags & LIBIO_FLAGS_REFERENCE_MASK ) == 0 ) ) {

This should use `rtems_libio_iop_is_free` and `rtems_libio_iop_is_held` since 
they're inlined and will likely optimize away the duplicated 
`rtems_libio_iop_flags` call anyway.

--
  
Kinsey Moore started a new discussion on cpukit/libcsupport/src/libio.c: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/516#note_125039

 > +    /*
 > +     * Clear the flags. All references should have been dropped. Free
 > +     * IOP have all reference count its set.

"reference count its" -> "reference count bits"?

Nothing here is checking that all ref count bits are set and the atomic store 
below would clear said bits.


-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/516
You're receiving this email because of your account on gitlab.rtems.org.


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to