Details

    • Sub-task
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • None
    • DRLVM
    • None
    • Patch Available

    Description

      This issue contains improvements of interrupt() implementation on top of H-1789-updated.patch from HARMONY-1789:

      0001-removed-interrupter-thread.patch replaces the auxiiliary interrupter thread with direct call to hycond_notify_all(), since this call does not require the monitor to be held

      0002-refactored-wait_count-to-be-modified-only-from-wait.patch fixes wait_count handling, which is broken a bit by 0001 patch. IMHO, modifying wait_count outside of threads waiting on the monitor was not correct in the first place.

      0003-replaced-HyThread.monitor-with-HyThread.current_condition.patch further simplifies interrupt() implementation by removing special case for a thread waiting on a monitor, since it boils down to waiting on a conditional variable.

      Attachments

        Issue Links

          Activity

            People

              varlax Alexey Varlamov
              salikh Salikh Zakirov
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: