[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: Issues while running Xen with new RR scheduler


  • To: Ananth <cbananth@xxxxxxxxx>
  • From: George Dunlap <dunlapg@xxxxxxxxx>
  • Date: Mon, 27 Apr 2009 21:41:43 +0100
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Mon, 27 Apr 2009 13:42:10 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=tpF9iURdWFhz1A3oaDzHKktobo9ko3+2Px4zeOzHBZnt4PT+nnmgwMvbP1/rWNrZ0x 9aALEAuHeL2F9gKJA4tDBohgLqO06n3xvblO4iChuJg0lctPSsikcFQ9X3PxVlwrUuDb QEMDfNSAEqh8i2lfVhTZdT5sJVtgqbUEeHH64=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

You need to pass the arguments to xen on the xen command line, not the
dom0 kernel command line.  So the following line should be:

kernel /boot/xen.gz sched=rrobin

(I haven't checked to make sure that "sched" is the right parameter.)

 -George

On Mon, Apr 27, 2009 at 7:39 PM, Ananth <cbananth@xxxxxxxxx> wrote:
> Hi,
> In continuation with my previous post, I am able to login to the compiled
> Xen. But it is continuing to run on credit scheduler even if i modify the
> kernel parameters to run using round robin scheduler.
> I have pasted the contents of the /boot/grub/menu.lst file.
>
> title Xen -- openSUSE 11.0 - 2.6.18.8 manually compiled AGAIN
> root (hd0,4)
> kernel /boot/xen.gz
> module /boot/vmlinuz-2.6.18.8-xen0
> root=/dev/disk/by-id/scsi-SATA_Hitachi_HTS5416_SB2D04E4CE7YEE-part5 showopts
> sched=rrobin vga=0x314
> module /boot/initrd-2.6.18-xen0
>
> Incidentally, even if i give sched=sedf, it still runs only on credit
> scheduler. Please let me know your feedback on this issue. My aim is to
> study the performance statistics of credit, sedf and new RR scheduler. It
> would be great if you could give me any pointers to measure scheduler
> performance or get statistics from the system.
>
> Thanks & Regards
> Ananth
>
> ---------- Forwarded message ----------
> From: Ananth <cbananth@xxxxxxxxx>
> Date: Mon, Apr 27, 2009 at 6:45 PM
> Subject: Re: [Xen-devel] Fwd: Error while compiling with new RR scheduler
> To: George Dunlap <dunlapg@xxxxxxxxx>
> Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
>
>
> Hello,
> Thank you so much for pointing it out. How could I miss something so
> obvious. I am able to compile it now. I will get back to you in case I get
> into any issues during run time.
>
> Thank you.
>
> Regards
> Ananth
>
> On Mon, Apr 27, 2009 at 6:29 PM, George Dunlap <dunlapg@xxxxxxxxx> wrote:
>>
>> The message says it pretty clearly:  you return the value of ret, but
>> there are control paths in the function for which ret.task is not set.
>>  Namely, if list_empty(runq) is true, then you will return an
>> uninitialized value, which may be anything (garbage on the stack,
>> NULL, &c).  This will most likely cause Xen to crash, as
>> xen/common/schedule.c assumes that ret.task will be a valid, non-NULL
>> pointer.
>>
>> If you happen to know that runq is never empty, then you don't need
>> the if statement.  If it may be empty, then you need an else clause to
>> return the idle vcpu for that processor.
>>
>>  -George
>>
>> 2009/4/24 Ananth <cbananth@xxxxxxxxx>:
>> > Hi,
>> > I figured out that the error was because of a missing ' ; ' . This has
>> > been fixed now. I have attached the modified code.
>> > While compiling I am getting the below error message.
>> >
>> > cc1: warnings being treated as errors
>> > sched_rrobin.c: In function ‘rrobin_schedule’:
>> > sched_rrobin.c:74: error: ‘ret.task’ may be used uninitialized in this
>> > function
>> >
>> > Please guide.
>> >
>> > Thanks & Regards
>> > Ananth
>> >
>> >
>> > ---------- Forwarded message ----------
>> > From: Ananth <cbananth@xxxxxxxxx>
>> > Date: Fri, Apr 24, 2009 at 7:25 PM
>> > Subject: Error while compiling with new RR scheduler
>> > To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
>> >
>> >
>> > Hi,
>> > Please find attached the source code of Round Robin scheduler which I am
>> > trying to add to Xen 3.3.1.
>> > I am facing the following error messages while compiling the same.
>> >
>> > sched_rrobin.c:31: error: two or more data types in declaration
>> > specifiers
>> >
>> > sched_rrobin.c: In function ‘rrobin_vcpu_init’:
>> >
>> > sched_rrobin.c:34: error: incompatible types in return
>> >
>> > sched_rrobin.c:51: error: incompatible types in return
>> >
>> > sched_rrobin.c:94: error: initialization from incompatible pointer type
>> >
>> > I believe the error in line 94 is causing the rest of the error
>> > messages. I have checked with the structure definition in sched-if.h as 
>> > well
>> > as the implementation of the same in other schedulers such as SEDF and
>> > Credit.
>> >
>> > Request you to kindly provide your feedback regarding the same.
>> >
>> > Thanks & Regards
>> > Ananth
>> >
>> >
>> > _______________________________________________
>> > Xen-devel mailing list
>> > Xen-devel@xxxxxxxxxxxxxxxxxxx
>> > http://lists.xensource.com/xen-devel
>> >
>> >
>
>
>

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.