forked from Imagelibrary/rtems
score: Use default get/set affinity operation
Add and use SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY.
This commit is contained in:
@@ -365,6 +365,12 @@ void _Scheduler_default_Start_idle(
|
|||||||
size_t cpusetsize,
|
size_t cpusetsize,
|
||||||
const cpu_set_t *cpuset
|
const cpu_set_t *cpuset
|
||||||
);
|
);
|
||||||
|
|
||||||
|
#define SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
|
, _Scheduler_default_Get_affinity \
|
||||||
|
, _Scheduler_default_Set_affinity
|
||||||
|
#else
|
||||||
|
#define SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ extern "C" {
|
|||||||
_Scheduler_CBS_Release_job, /* new period of task */ \
|
_Scheduler_CBS_Release_job, /* new period of task */ \
|
||||||
_Scheduler_default_Tick, /* tick entry point */ \
|
_Scheduler_default_Tick, /* tick entry point */ \
|
||||||
_Scheduler_default_Start_idle /* start idle entry point */ \
|
_Scheduler_default_Start_idle /* start idle entry point */ \
|
||||||
|
SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Return values for CBS server. */
|
/* Return values for CBS server. */
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ extern "C" {
|
|||||||
_Scheduler_EDF_Release_job, /* new period of task */ \
|
_Scheduler_EDF_Release_job, /* new period of task */ \
|
||||||
_Scheduler_default_Tick, /* tick entry point */ \
|
_Scheduler_default_Tick, /* tick entry point */ \
|
||||||
_Scheduler_default_Start_idle /* start idle entry point */ \
|
_Scheduler_default_Start_idle /* start idle entry point */ \
|
||||||
|
SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -34,14 +34,6 @@ extern "C" {
|
|||||||
*/
|
*/
|
||||||
/**@{*/
|
/**@{*/
|
||||||
|
|
||||||
#if defined(__RTEMS_HAVE_SYS_CPUSET_H__) && defined(RTEMS_SMP)
|
|
||||||
#define SCHEDULER_PRIORITY_ADDITIONAL_SMP_ENTRY_POINTS \
|
|
||||||
_Scheduler_default_Get_affinity, /* get affinity entry point */ \
|
|
||||||
_Scheduler_default_Set_affinity /* set affinity entry point */
|
|
||||||
#else
|
|
||||||
#define SCHEDULER_PRIORITY_ADDITIONAL_SMP_ENTRY_POINTS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Entry points for the Deterministic Priority Based Scheduler.
|
* Entry points for the Deterministic Priority Based Scheduler.
|
||||||
*/
|
*/
|
||||||
@@ -59,8 +51,8 @@ extern "C" {
|
|||||||
_Scheduler_priority_Priority_compare, /* compares two priorities */ \
|
_Scheduler_priority_Priority_compare, /* compares two priorities */ \
|
||||||
_Scheduler_default_Release_job, /* new period of task */ \
|
_Scheduler_default_Release_job, /* new period of task */ \
|
||||||
_Scheduler_default_Tick, /* tick entry point */ \
|
_Scheduler_default_Tick, /* tick entry point */ \
|
||||||
_Scheduler_default_Start_idle, /* start idle entry point */ \
|
_Scheduler_default_Start_idle /* start idle entry point */ \
|
||||||
SCHEDULER_PRIORITY_ADDITIONAL_SMP_ENTRY_POINTS \
|
SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|||||||
@@ -90,9 +90,8 @@ typedef struct {
|
|||||||
_Scheduler_priority_Priority_compare, \
|
_Scheduler_priority_Priority_compare, \
|
||||||
_Scheduler_default_Release_job, \
|
_Scheduler_default_Release_job, \
|
||||||
_Scheduler_default_Tick, \
|
_Scheduler_default_Tick, \
|
||||||
_Scheduler_SMP_Start_idle, \
|
_Scheduler_SMP_Start_idle \
|
||||||
_Scheduler_default_Get_affinity, \
|
SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
_Scheduler_default_Set_affinity \
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _Scheduler_priority_SMP_Initialize( const Scheduler_Control *scheduler );
|
void _Scheduler_priority_SMP_Initialize( const Scheduler_Control *scheduler );
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ extern "C" {
|
|||||||
_Scheduler_default_Release_job, /* new period of task */ \
|
_Scheduler_default_Release_job, /* new period of task */ \
|
||||||
_Scheduler_default_Tick, /* tick entry point */ \
|
_Scheduler_default_Tick, /* tick entry point */ \
|
||||||
_Scheduler_default_Start_idle /* start idle entry point */ \
|
_Scheduler_default_Start_idle /* start idle entry point */ \
|
||||||
|
SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -71,9 +71,8 @@ typedef struct {
|
|||||||
_Scheduler_priority_Priority_compare, \
|
_Scheduler_priority_Priority_compare, \
|
||||||
_Scheduler_default_Release_job, \
|
_Scheduler_default_Release_job, \
|
||||||
_Scheduler_default_Tick, \
|
_Scheduler_default_Tick, \
|
||||||
_Scheduler_SMP_Start_idle, \
|
_Scheduler_SMP_Start_idle \
|
||||||
_Scheduler_default_Get_affinity, \
|
SCHEDULER_OPERATION_DEFAULT_GET_SET_AFFINITY \
|
||||||
_Scheduler_default_Set_affinity \
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _Scheduler_simple_SMP_Initialize( const Scheduler_Control *scheduler );
|
void _Scheduler_simple_SMP_Initialize( const Scheduler_Control *scheduler );
|
||||||
|
|||||||
Reference in New Issue
Block a user