Skip to content
Snippets Groups Projects
  1. Jan 20, 2018
  2. Dec 29, 2017
  3. May 30, 2017
  4. May 29, 2017
  5. May 25, 2017
  6. Jan 05, 2017
  7. Jan 04, 2017
  8. Dec 22, 2016
  9. Dec 09, 2016
  10. Dec 05, 2016
  11. Dec 04, 2016
    • Subv's avatar
      Threading: Reworked the way our scheduler works. · 8634b8cb
      Subv authored
      Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then.
      
      The scheduler is now called once after every SVC call, and once after a thread is awakened from sleep by its timeout callback.
      
      This new implementation is based off reverse-engineering of the real kernel.
      
      See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling.
      8634b8cb
  12. Dec 01, 2016
  13. Nov 20, 2016
  14. Sep 22, 2016
  15. Sep 21, 2016
  16. Sep 19, 2016
  17. Sep 18, 2016
  18. Jun 11, 2016
  19. Jun 05, 2016
  20. Jul 12, 2015
  21. Jun 27, 2015
  22. Jun 17, 2015
  23. May 21, 2015
  24. May 15, 2015
    • Subv's avatar
      Core/ResourceLimits: Implemented the basic structure of ResourceLimits. · d3634d4b
      Subv authored
      Implemented svcs GetResourceLimit, GetResourceLimitCurrentValues and GetResourceLimitLimitValues.
      
      Note that the resource limits do not currently keep track of used objects, since we have no way to distinguish between an object created by the application, and an object created by some HLE module once we're inside Kernel::T::Create.
      d3634d4b
  25. May 09, 2015
  26. May 07, 2015
  27. May 01, 2015
  28. Feb 12, 2015
  29. Feb 02, 2015
    • Yuri Kunde Schlesner's avatar
      Kernel: Make WaitObjects share ownership of Threads waiting on them · 52f58e64
      Yuri Kunde Schlesner authored
      During normal operation, a thread waiting on an WaitObject and the
      object hold mutual references to each other for the duration of the
      wait.
      
      If a process is forcefully terminated (The CTR kernel has a SVC to do
      this, TerminateProcess, though no equivalent exists for threads.) its
      threads would also be stopped and destroyed, leaving dangling pointers
      in the WaitObjects.
      
      The solution is to simply have the Thread remove itself from WaitObjects
      when it is stopped. The vector of Threads in WaitObject has also been
      changed to hold SharedPtrs, just in case. (Better to have a reference
      cycle than a crash.)
      52f58e64
    • Yuri Kunde Schlesner's avatar
Loading