[LITMUS^RT] proposing liblitmus API additions and changes

Björn Brandenburg bbb at mpi-sws.org
Tue Mar 12 15:17:32 CET 2013


On Mar 5, 2013, at 3:06 AM, Glenn Elliott <gelliott at cs.unc.edu> wrote:

> In any case, I see that there is a bug in cedf_admit_task(): The function checks to see if the task to be admitted is running on a singular CPU.  Instead, it should look up the C-EDF domain for the CPU on which the task to be admitted is running and compare that to the C-EDF domain for the CPU denoted in task_params.cpu.  That is:
> 
> return (remote_cluster(task_cpu(task)) == task_cpu_cluster(task)) ? 0 : -EINVAL;  // correct behavior
> 
> instead of this:
> 
> return task_cpu(tsk) == tsk->rt_param.task_params.cpu ? 0 : -EINVAL;  // incorrect behavior

It used to work just fine.  Prior to the recent patches, the convention was to simply migrate tasks to a fixed CPU in a cluster prior to admission. That is, tasks had to be assigned to any one CPU in a cluster (usually the first). After admission, the affinity mask is ignored anyway.  The above code snippet turned into a bug only with the recent changes in liblitmus.

> 
> I'll submit a patch.

Ok, merged.

- Björn





More information about the litmus-dev mailing list