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

[Xen-devel] Anyone know how and where the do_sched_op(SCHEDOP_BLOCK) got called? -- Sam


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: walmart <vmwalmart@xxxxxxxxx>
  • Date: Sun, 31 Oct 2010 00:09:56 -0500
  • Delivery-date: Sat, 30 Oct 2010 22:11:55 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:from:date:x-google-sender-auth:message-id :subject:to:content-type; b=Ajk7IU2NfjWIjSTue27hN2gN529uWP1hLrpwM5RgbLd02c2bqVGzvsev0rbI3LCL50 X5HGbuB3Iv67RdHDoQT2kyw2PadKzRFYO2DT0KJ5EKuazdrRf8ujeVcwXWDiwlPjWcjM xUQTg3PN9E3dSN6m/zI81ohq4wzDSbinkEQc8=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Hi, all:

In the 64 bit Xen 4.0.1, compiled from the source code,

under xen/common/schedule.c,
ret_t do_sched_op(int cmd, XEN_GUEST_HANDLE(void) arg).

Does anyone know how this function got called?

I raise this question cause I noticed in the default credit based
scheduler, if I only configure one busy cpu to run(pinned to one
specific core, it is also the only VCPU on that core). if I run a busy
loop, I would only get 95% of the utilization.

I add some printk into the code and found that:

every 1s, the do_sched_op() would exec, and the cmd is schedop_block.
which would block the vcpu for 50 ms. (50 ms / 1 s = 5%), causing the
vcpu can only get 95% of the resources.

Does anyone know the reason for this?

Or, does anyone know how and where this do_sched_op() function get
called? I did a grep and all I can found is the compat_do_sched_op,
which is not called at all..

I would highly appreciate your help!

Thanks very much!

best!

Sam

_______________________________________________
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®.