Notice: We have migrated to GitLab launching 2024-05-01 see here: https://gitlab.rtems.org/

Ticket #2069: scheduleredfallocate_v1.patch

File scheduleredfallocate_v1.patch, 1.2 KB (added by Andreas Heinig, on 06/18/12 at 13:34:07)

Correctly initialize EDF and CBS per-threas structure

  • cpukit/score/src/scheduleredfallocate.c

    diff --git a/cpukit/score/src/scheduleredfallocate.c b/cpukit/score/src/scheduleredfallocate.c
    index 5e6ff6a..1993bbb 100644
    a b  
    1515#include <rtems/config.h>
    1616#include <rtems/score/scheduler.h>
    1717#include <rtems/score/scheduleredf.h>
     18#include <rtems/score/schedulercbs.h>
    1819#include <rtems/score/wkspace.h>
    1920
    2021void *_Scheduler_EDF_Allocate(
    void *_Scheduler_EDF_Allocate( 
    2223)
    2324{
    2425  void *sched;
    25   Scheduler_EDF_Per_thread *schinfo;
    26 
    27   sched = _Workspace_Allocate( sizeof(Scheduler_EDF_Per_thread) );
     26  Scheduler_CBS_Per_thread *schinfo;
    2827
     28  sched = _Workspace_Allocate(sizeof(Scheduler_CBS_Per_thread));
    2929  if ( sched ) {
    3030    the_thread->scheduler_info = sched;
    31     schinfo = (Scheduler_EDF_Per_thread *)(the_thread->scheduler_info);
    32     schinfo->thread = the_thread;
    33     schinfo->queue_state = SCHEDULER_EDF_QUEUE_STATE_NEVER_HAS_BEEN;
     31    schinfo = (Scheduler_CBS_Per_thread *)(the_thread->scheduler_info);
     32    schinfo->edf_per_thread.thread = the_thread;
     33    schinfo->edf_per_thread.queue_state = SCHEDULER_EDF_QUEUE_STATE_NEVER_HAS_BEEN;
     34    schinfo->cbs_server = NULL;
    3435  }
    3536
    3637  return sched;