1. 11 Apr, 2023 5 commits
  2. 07 Apr, 2023 1 commit
    • Nils Goroll's avatar
      Do not short-cut the mutex protecting node->subreq.done · 4c3f8070
      Nils Goroll authored
      A follow-up issue has been reported in #13:
      
      Assert error in Lck_Delete(), cache/cache_lck.c line 309:
        Condition((pthread_mutex_destroy(&ilck->mtx)) == 0) not true.
      
      triggered from Lck_Delete(&bytes_tree->nodes_lock) at the bottom of
      bytes_tree_fini().
      
      Assuming everything else working correctly, the only scenario I
      can see the moment is that we see the node->subreq.done == 1
      earlier than Lck_Unlock() returned in vped_task(). In this
      case, we could advance to destroying the lock while the other
      thread still holds it.
      
      The other use case of the shared lock is in fini_final(), where
      we already go through an explicit lock/unlock.
      
      Hopefully fixes #13 for real
      
      (backport of 067c16e0 to 6.6)
      4c3f8070
  3. 06 Apr, 2023 2 commits
  4. 27 Apr, 2022 2 commits
  5. 25 Jan, 2022 2 commits
  6. 27 Oct, 2021 3 commits
  7. 23 Aug, 2021 1 commit
    • Nils Goroll's avatar
      Add back _POSIX_C_SOURCE · a4357ee7
      Nils Goroll authored
      I had removed these before the public open source release based on Flexelint output,
      but Geoff is correct that, contrary to the C version macros like __STDC_VERSION__,
      _POSIX_C_SOURCE is to be set by the programmer.
      
      Ref: https://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html
      
      On the downside, we do now see some noise from flexelint and it is unclear to me
      how to suppress Note 9071.
      
      --- Module:   pesi.c (C)
      File pesi.c, Line 33
              _
          Note 9071: defined macro '_POSIX_C_SOURCE' is reserved to the compiler
      File /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h, Line 23
                            _
        long int __tm_gmtoff;		/* Seconds east of UTC.  */
          Error 114: Inconsistent structure declaration for tag 'tm'
      File /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h, Line 24
                             _
        const char *__tm_zone;	/* Timezone abbreviation.  */
          Error 114: Inconsistent structure declaration for tag 'tm'
      
      --- Module:   vdp_pesi.c (C)
      File vdp_pesi.c, Line 33
              _
          Note 9071: defined macro '_POSIX_C_SOURCE' is reserved to the compiler
      File /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h, Line 23
                            _
        long int __tm_gmtoff;		/* Seconds east of UTC.  */
          Error 114: Inconsistent structure declaration for tag 'tm'
      File /usr/include/x86_64-linux-gnu/bits/types/struct_tm.h, Line 24
                             _
        const char *__tm_zone;	/* Timezone abbreviation.  */
          Error 114: Inconsistent structure declaration for tag 'tm'
      a4357ee7
  8. 17 Aug, 2021 4 commits
  9. 16 Aug, 2021 1 commit