[LITMUS^RT] PFair policy issue

Mihai-Iulian Gheorghe gheorghe at student.chalmers.se
Wed Oct 2 14:50:32 CEST 2013


Hi Glenn,

I tried to run "rtspin", with the specified parameters, as requested, but no output is produced. Actually nothing is executed. 

All the other userspace library applications provided in "liblitmus", like "runtests", "rt_launch" etc. are working fine.

Any other test I can do for you?

Best regards,
Mihai

-----Original Message-----
From: litmus-dev-bounces at lists.litmus-rt.org [mailto:litmus-dev-bounces at lists.litmus-rt.org] On Behalf Of litmus-dev-request at lists.litmus-rt.org
Sent: Wednesday, October 02, 2013 12:00 PM
To: litmus-dev at lists.litmus-rt.org
Subject: litmus-dev Digest, Vol 22, Issue 2

Send litmus-dev mailing list submissions to
	litmus-dev at lists.litmus-rt.org

To subscribe or unsubscribe via the World Wide Web, visit
	https://lists.litmus-rt.org/listinfo/litmus-dev
or, via email, send a message with subject or body 'help' to
	litmus-dev-request at lists.litmus-rt.org

You can reach the person managing the list at
	litmus-dev-owner at lists.litmus-rt.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of litmus-dev digest..."


Today's Topics:

   1. Re: litmus-dev Digest, Vol 22, Issue 1 (Mihai-Iulian Gheorghe)
   2. Re: litmus-dev Digest, Vol 22, Issue 1 (Glenn Elliott)


----------------------------------------------------------------------

Message: 1
Date: Tue, 1 Oct 2013 13:18:06 +0000
From: Mihai-Iulian Gheorghe <gheorghe at student.chalmers.se>
To: "litmus-dev at lists.litmus-rt.org" <litmus-dev at lists.litmus-rt.org>
Subject: Re: [LITMUS^RT] litmus-dev Digest, Vol 22, Issue 1
Message-ID:
	<4af3763dd03641ff88bedf0277dd17be at BLUPR01MB129.prod.exchangelabs.com>
Content-Type: text/plain; charset="us-ascii"

Hi Glenn,

I do not have any error codes. As I previously said, I have a dummy RT task, which just prints something at every period. 

More exactly, in the function "job()", I have a print statement. The problem is that, when I run this under PFAIR, the PERIOD I set is not taken into consideration, so basically it just runs an infinite loop, without any constraint:

	do {
                /* Wait until the next job is released. */
                sleep_next_period();
                /* Invoke job. */
                do_exit = job();
        } while (!do_exit);


Maybe this bug is related to "sleep_next_period();", which should take care of the real time constraints, like the PERIOD.

Thank you!
Mihai

-----Original Message-----
From: litmus-dev-bounces at lists.litmus-rt.org [mailto:litmus-dev-bounces at lists.litmus-rt.org] On Behalf Of litmus-dev-request at lists.litmus-rt.org
Sent: Tuesday, October 01, 2013 12:00 PM
To: litmus-dev at lists.litmus-rt.org
Subject: litmus-dev Digest, Vol 22, Issue 1

Send litmus-dev mailing list submissions to
	litmus-dev at lists.litmus-rt.org

To subscribe or unsubscribe via the World Wide Web, visit
	https://lists.litmus-rt.org/listinfo/litmus-dev
or, via email, send a message with subject or body 'help' to
	litmus-dev-request at lists.litmus-rt.org

You can reach the person managing the list at
	litmus-dev-owner at lists.litmus-rt.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of litmus-dev digest..."


Today's Topics:

   1. PFAIR policy (Mihai-Iulian Gheorghe)
   2. Re: PFAIR policy (Glenn Elliott)


----------------------------------------------------------------------

Message: 1
Date: Mon, 30 Sep 2013 19:40:53 +0000
From: Mihai-Iulian Gheorghe <gheorghe at student.chalmers.se>
To: "litmus-dev at lists.litmus-rt.org" <litmus-dev at lists.litmus-rt.org>
Subject: [LITMUS^RT] PFAIR policy
Message-ID:
	<56a0e34aaf754cf5a222d506245e4a3a at BLUPR01MB129.prod.exchangelabs.com>
Content-Type: text/plain; charset="us-ascii"

Hello,

I am new to LITMUS and I am looking for some help. It seems that for some reason I am not able to run RT tasks under PFAIR. This policy is not taken into account.

To be more precise, I have used the provided skeleton to write a real time task (just a dummy, that prints something periodically). The same RT task performs well under the other global scheduling policies and under the partitioned ones (with the note that for these policies, the RT task has been modified to run on a specific core, as required:
param.cpu = CPU;
                be_migrate_to_partition(CPU);
                CALL( set_rt_task_param(gettid(), &param) );  ).

Am I missing something? Please let me know if someone can help me. I am using the latest version of LITMUS - 2013.1. My system: Ubuntu 12.10, kernel version 3.10.5.


Best regards,
---
Mihai Gheorghe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.litmus-rt.org/pipermail/litmus-dev/attachments/20130930/f6a54f53/attachment-0001.html>

------------------------------

Message: 2
Date: Mon, 30 Sep 2013 15:48:30 -0400
From: Glenn Elliott <gelliott at cs.unc.edu>
To: litmus-dev at lists.litmus-rt.org
Subject: Re: [LITMUS^RT] PFAIR policy
Message-ID: <77E72CD2-B5DD-481C-A07D-5252665FE0E8 at cs.unc.edu>
Content-Type: text/plain; charset="us-ascii"

Hi Mihai,

PFAIR doesn't get the same degree as testing as the other schedulers, so there may be a bug.  Do you have any error messages/codes that you can share?

Thanks,
Glenn


On Sep 30, 2013, at 3:40 PM, Mihai-Iulian Gheorghe <gheorghe at student.chalmers.se> wrote:

> Hello,
>  
> I am new to LITMUS and I am looking for some help. It seems that for some reason I am not able to run RT tasks under PFAIR. This policy is not taken into account.
>  
> To be more precise, I have used the provided skeleton to write a real time task (just a dummy, that prints something periodically). The same RT task performs well under the other global scheduling policies and under the partitioned ones (with the note that for these policies, the RT task has been modified to run on a specific core, as required:
> param.cpu = CPU;
>                 be_migrate_to_partition(CPU);
>                 CALL( set_rt_task_param(gettid(), &param) );  ).
>  
> Am I missing something? Please let me know if someone can help me. I am using the latest version of LITMUS -2013.1. My system: Ubuntu 12.10, kernel version 3.10.5.
>  
>  
> Best regards,
> ---
> Mihai Gheorghe
> _______________________________________________
> litmus-dev mailing list
> litmus-dev at lists.litmus-rt.org
> https://lists.litmus-rt.org/listinfo/litmus-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.litmus-rt.org/pipermail/litmus-dev/attachments/20130930/1f139164/attachment-0001.html>

------------------------------

_______________________________________________
litmus-dev mailing list
litmus-dev at lists.litmus-rt.org
https://lists.litmus-rt.org/listinfo/litmus-dev


End of litmus-dev Digest, Vol 22, Issue 1
*****************************************



------------------------------

Message: 2
Date: Tue, 1 Oct 2013 09:32:44 -0400
From: Glenn Elliott <gelliott at cs.unc.edu>
To: litmus-dev at lists.litmus-rt.org
Subject: Re: [LITMUS^RT] litmus-dev Digest, Vol 22, Issue 1
Message-ID: <F8F57915-02A2-491B-9F83-14E10AB4F157 at cs.unc.edu>
Content-Type: text/plain; charset=us-ascii

I'll take a look into this.  Thank you for the information.  One last thing you could try out for me:

1) Select the pfair scheduler.
2) As root, do "> rtspin 50 100 60" (rtspin is a part of liblitmus).  This will launch a real time task with a period of 100ms and an execution time of ~50ms.  The task will run for 60 seconds.
3) In another terminal, do 'top' and observe the CPU utilization of the real time task.

Is the observed utilization ~50% or is it 100%?

-Glenn


On Oct 1, 2013, at 9:18 AM, Mihai-Iulian Gheorghe <gheorghe at student.chalmers.se> wrote:

> Hi Glenn,
> 
> I do not have any error codes. As I previously said, I have a dummy RT task, which just prints something at every period. 
> 
> More exactly, in the function "job()", I have a print statement. The problem is that, when I run this under PFAIR, the PERIOD I set is not taken into consideration, so basically it just runs an infinite loop, without any constraint:
> 
> 	do {
>                /* Wait until the next job is released. */
>                sleep_next_period();
>                /* Invoke job. */
>                do_exit = job();
>        } while (!do_exit);
> 
> 
> Maybe this bug is related to "sleep_next_period();", which should take care of the real time constraints, like the PERIOD.
> 
> Thank you!
> Mihai
> 
> -----Original Message-----
> From: litmus-dev-bounces at lists.litmus-rt.org [mailto:litmus-dev-bounces at lists.litmus-rt.org] On Behalf Of litmus-dev-request at lists.litmus-rt.org
> Sent: Tuesday, October 01, 2013 12:00 PM
> To: litmus-dev at lists.litmus-rt.org
> Subject: litmus-dev Digest, Vol 22, Issue 1
> 
> Send litmus-dev mailing list submissions to
> 	litmus-dev at lists.litmus-rt.org
> 
> To subscribe or unsubscribe via the World Wide Web, visit
> 	https://lists.litmus-rt.org/listinfo/litmus-dev
> or, via email, send a message with subject or body 'help' to
> 	litmus-dev-request at lists.litmus-rt.org
> 
> You can reach the person managing the list at
> 	litmus-dev-owner at lists.litmus-rt.org
> 
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of litmus-dev digest..."
> 
> 
> Today's Topics:
> 
>   1. PFAIR policy (Mihai-Iulian Gheorghe)
>   2. Re: PFAIR policy (Glenn Elliott)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Mon, 30 Sep 2013 19:40:53 +0000
> From: Mihai-Iulian Gheorghe <gheorghe at student.chalmers.se>
> To: "litmus-dev at lists.litmus-rt.org" <litmus-dev at lists.litmus-rt.org>
> Subject: [LITMUS^RT] PFAIR policy
> Message-ID:
> 	<56a0e34aaf754cf5a222d506245e4a3a at BLUPR01MB129.prod.exchangelabs.com>
> Content-Type: text/plain; charset="us-ascii"
> 
> Hello,
> 
> I am new to LITMUS and I am looking for some help. It seems that for some reason I am not able to run RT tasks under PFAIR. This policy is not taken into account.
> 
> To be more precise, I have used the provided skeleton to write a real time task (just a dummy, that prints something periodically). The same RT task performs well under the other global scheduling policies and under the partitioned ones (with the note that for these policies, the RT task has been modified to run on a specific core, as required:
> param.cpu = CPU;
>                be_migrate_to_partition(CPU);
>                CALL( set_rt_task_param(gettid(), &param) );  ).
> 
> Am I missing something? Please let me know if someone can help me. I am using the latest version of LITMUS - 2013.1. My system: Ubuntu 12.10, kernel version 3.10.5.
> 
> 
> Best regards,
> ---
> Mihai Gheorghe
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.litmus-rt.org/pipermail/litmus-dev/attachments/20130930/f6a54f53/attachment-0001.html>
> 
> ------------------------------
> 
> Message: 2
> Date: Mon, 30 Sep 2013 15:48:30 -0400
> From: Glenn Elliott <gelliott at cs.unc.edu>
> To: litmus-dev at lists.litmus-rt.org
> Subject: Re: [LITMUS^RT] PFAIR policy
> Message-ID: <77E72CD2-B5DD-481C-A07D-5252665FE0E8 at cs.unc.edu>
> Content-Type: text/plain; charset="us-ascii"
> 
> Hi Mihai,
> 
> PFAIR doesn't get the same degree as testing as the other schedulers, so there may be a bug.  Do you have any error messages/codes that you can share?
> 
> Thanks,
> Glenn
> 
> 
> On Sep 30, 2013, at 3:40 PM, Mihai-Iulian Gheorghe <gheorghe at student.chalmers.se> wrote:
> 
>> Hello,
>> 
>> I am new to LITMUS and I am looking for some help. It seems that for some reason I am not able to run RT tasks under PFAIR. This policy is not taken into account.
>> 
>> To be more precise, I have used the provided skeleton to write a real time task (just a dummy, that prints something periodically). The same RT task performs well under the other global scheduling policies and under the partitioned ones (with the note that for these policies, the RT task has been modified to run on a specific core, as required:
>> param.cpu = CPU;
>>                be_migrate_to_partition(CPU);
>>                CALL( set_rt_task_param(gettid(), &param) );  ).
>> 
>> Am I missing something? Please let me know if someone can help me. I am using the latest version of LITMUS -2013.1. My system: Ubuntu 12.10, kernel version 3.10.5.
>> 
>> 
>> Best regards,
>> ---
>> Mihai Gheorghe
>> _______________________________________________
>> litmus-dev mailing list
>> litmus-dev at lists.litmus-rt.org
>> https://lists.litmus-rt.org/listinfo/litmus-dev
> 
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.litmus-rt.org/pipermail/litmus-dev/attachments/20130930/1f139164/attachment-0001.html>
> 
> ------------------------------
> 
> _______________________________________________
> litmus-dev mailing list
> litmus-dev at lists.litmus-rt.org
> https://lists.litmus-rt.org/listinfo/litmus-dev
> 
> 
> End of litmus-dev Digest, Vol 22, Issue 1
> *****************************************
> 
> _______________________________________________
> litmus-dev mailing list
> litmus-dev at lists.litmus-rt.org
> https://lists.litmus-rt.org/listinfo/litmus-dev




------------------------------

_______________________________________________
litmus-dev mailing list
litmus-dev at lists.litmus-rt.org
https://lists.litmus-rt.org/listinfo/litmus-dev


End of litmus-dev Digest, Vol 22, Issue 2
*****************************************




More information about the litmus-dev mailing list