Skip to content
Snippets Groups Projects
  1. May 10, 2018
  2. Apr 30, 2018
  3. Apr 27, 2018
  4. Apr 26, 2018
  5. Apr 23, 2018
    • Subv's avatar
      Kernel: Implemented mutex priority inheritance. · 46572d02
      Subv authored
      Verified with a hwtest and implemented based on reverse engineering.
      
      Thread A's priority will get bumped to the highest priority among all the threads that are waiting for a mutex that A holds.
      Once A releases the mutex and ownership is transferred to B, A's priority will return to normal and B's priority will be bumped.
      46572d02
  6. Apr 21, 2018
  7. Mar 31, 2018
  8. Mar 19, 2018
  9. Mar 16, 2018
  10. Mar 14, 2018
  11. Feb 27, 2018
  12. Feb 18, 2018
  13. Feb 14, 2018
  14. Jan 09, 2018
  15. Jan 03, 2018
  16. Dec 31, 2017
  17. Dec 30, 2017
  18. Dec 29, 2017
  19. Oct 31, 2017
  20. Oct 20, 2017
  21. Oct 10, 2017
  22. Oct 01, 2017
  23. Sep 30, 2017
  24. Sep 28, 2017
    • Subv's avatar
      Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken. · 8432749d
      Subv authored
      This change makes for a clearer (less confusing) path of execution in the scheduler, now the code to execute when a thread awakes is closer to the code that puts the thread to sleep (WaitSynch1, WaitSynchN). It also allows us to implement the special wake up behavior of ReplyAndReceive without hacking up WaitObject::WakeupAllWaitingThreads.
      
      If savestates are desired in the future, we can change this implementation to one similar to the CoreTiming event system, where we first register the callback functions at startup and assign their identifiers to the Thread callback variable instead of directly assigning a lambda to the wake up callback variable.
      8432749d
  25. Sep 26, 2017
  26. Sep 24, 2017
  27. Sep 15, 2017
    • Subv's avatar
      Kernel/Threads: Don't clear the CPU instruction cache when performing a... · b1780892
      Subv authored
      Kernel/Threads: Don't clear the CPU instruction cache when performing a context switch from an idle thread into a thread in the same process.
      
      We were unnecessarily clearing the cache when going from Process A -> Idle -> Process A, this caused extreme performance regressions.
      b1780892
Loading