Ticket #40 (closed defect: fixed)

Opened 13 months ago

Last modified 13 months ago

Remove some control from the functions in _scheduler.h

Reported by: dave Owned by: dave
Priority: major Milestone: NxOS 0.2
Component: marvin Version:
Keywords: Cc:

Description (last modified by dave) (diff)

Currently mv__scheduler_block_task and mv__scheduler_suspend_task can affect any task they like. This is not acceptable. Both functions should assume that they are acting on the currently active thread, and end in preemption after doing their work. Only mv__scheduler_unblock_task actually should have a task handle parameter and be non-blocking.

Change History

Changed 13 months ago by dave

  • description modified (diff)

Changed 13 months ago by dave

  • status changed from new to closed
  • resolution set to fixed

Implemented in 1711e535b3ff. mv__scheduler_block_task still doesn't preempt, but that should be taken care of by #39 when mv_scheduler_unlock() becomes more intelligent. The current haphazard yielding code is ugly anyway.

Note: See TracTickets for help on using tickets.