Can't set total quantum with L4_Set_Timeslice()

Farid Hajji <[email protected]> Mon, 23 Apr 2012 17:09:28 +0200
Newsgroups gmane.comp.micro-kernel.l4.l4ka.general
Message-ID <CA+UrooRS4OAcEat9EW1Xd513ghxutb_0_zq1_9pzP88VB92+bA@mail.gmail.com>
--14dae9cfc7de43133004be5a06fa
Content-Type: text/plain; charset=ISO-8859-1

Hello,

I'm experimenting with user space scheduling on L4Ka::Pistachio
(amd64) as specified in the paper
  "Towards Effective User-Controlled Scheduling for Microkernel-Based Systems"
and I'd like a worker thread to RPC its associated scheduler
thread, when it has used up its total quantum.

This however never seems to happen. In the KDB, I always see
that 'tq' is set to 0usec, in other words, to L4_Never. Is it right
that the user space scheduler would never be RPC-ed in this case?

So I've tried to change the 'tq' with a call to L4_Set_Timeslice().
But even then, the 'tq' always remain at 0usec, and what's worse,
the time slice also jumps to 0usec, even when set to some other
value.

Is the call to L4_Set_Timeslice() broken?

Attached is a simple test case, and the output of KDB before
and after the call to L4_Set_Timeslice().

Thanks in advance,
-Farid Hajji.

--14dae9cfc7de43133004be5a06fa
Content-Type: text/plain; charset=US-ASCII; name="l4_set_timeslice.txt"
Content-Disposition: attachment; filename="l4_set_timeslice.txt"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_h1dnqv6i1

S2lja1N0YXJ0IDAuMTIuNTYKRGV0ZWN0ZWQgbXVsdGlib290IGNvbXBsaWFudCBsb2FkZXIKIGtl
cm5lbCAgICAoMHgwMDEwYTAwMC0weDAwMTRiYTQ1KSAgID0+IDB4MDBiMGUwMDAKICAoMHgwMDEw
YTFhMC0weDAwMTI2NmEwKSAtPiAweDAwNDAwMDAwLTB4MDA0MWM1MDAKICAoMHgwMDEyNjZhMC0w
eDAwMTI2ZmEzKSAtPiAweDAwNjAwMDAwLTB4MDA2MDA5MDMKICAoMHgwMDEyNzAwMC0weDAwMTJj
MTk0KSAtPiAweDAwODAwMDAwLTB4MDA4MDUxOTQKICAoMHgwMDEyZDAwMC0weDAwMTNhNDMwKSAt
PiAweDAwYTAwMDAwLTB4MDBhMGQ0MzAKICAoMHgwMDEzYjAwMC0weDAwMTQyNjkwKSAtPiAweDAw
YjBlMDAwLTB4MDBiMTU2OTAKIHNpZ21hMCAgICAoMHgwMDE0YzAwMC0weDAwMTZhMmU0KSAgID0+
IDB4MDBmMDAwMDAKICAoMHgwMDE0YzBjMC0weDAwMTUyMjAwKSAtPiAweDAwZjAwMDAwLTB4MDBm
MDYxNDAKIHJvb3R0YXNrICAoMHgwMDE2YjAwMC0weDAwMTc1ZjlkKSAgID0+IDB4MDEwMDAxMjAK
ICAoMHgwMDE2YjBiMC0weDAwMTZkNGQwKSAtPiAweDAxMDAwMDAwLTB4MDEwMDI0MjAKTGF1bmNo
aW5nIGtlcm5lbCAuLi4KCkw0S2E6OlBpc3RhY2hpbyAtIGJ1aWx0IG9uIEFwciAyMSAyMDEyIDE3
OjMwOjA1IGJ5IGZhcmlkQHVidW50dXZib3ggdXNpbmcgZ2NjIHZlcnNpb24gNC42LjMKSGVsbG8g
d29ybGQuLi4KCi0tLSAiYnkgdXNlciByZXF1ZXN0IiAtLS0KLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tIChlaXA9MDAwMDAwMDAwMTAwMDAyYSwgZXNwPTAwMDAwMDAwMDEwMDIzNjAp
IC0tLQo+IHNob3d0Y2IKdGNiL3RpZC9uYW1lIFtjdXJyZW50XTogY3VycmVudAo9PT0gVENCOiBm
ZmZmZmZmZTgwMDMyMDAwID09PSBJRDogMDAwMDAwMzIwMDAwMDAwMSA9IDAwMDAwMDAwYmYwMDAy
MDAvZmZmZmZmZmZjMGEzMjAwMD09PSBQUklPOiAyNTUgPT09PT09PT0gPT09ClVJUDogMDAwMDAw
MDAwMTAwMDAyYiAgIHF1ZXVlczogUnN3bCAgICAgICAgICAgICAgd2FpdCA6IE5JTF9USFJEICAg
ICAgICA6TklMX1RIUkQgICAgICAgICAgIHNwYWNlOiBmZmZmZmZmZmMwYTJjMDAwClVTUDogMDAw
MDAwMDAwMTAwMjM2MCAgIHRzdGF0ZTogUlVOTklORyAgICAgICAgICAgcmVhZHk6IFJPT1RUQVNL
ICAgICAgICA6Uk9PVFRBU0sgICAgICAgICAgIHBkaXIgOiAwMDAwMDAwMDAwYTJkMDAwCktTUDog
ZmZmZmZmZmU4MDAzMmVmMCAgIHNuZGhkIDogTklMX1RIUkQgICAgICAgICAgc2VuZCA6IE5JTF9U
SFJEICAgICAgICA6TklMX1RIUkQgICAgICAgICAgIHBhZ2VyOiBTSUdNQTAKdG90YWwgcXVhbnQ6
ICAgICAgICAgICAgICAgICAgIDB1cywgdHMgbGVuZ3RoICA6ICAgICAgICAgICAgICAgICAgMTAw
MDB1cywgY3VyciB0czogICAgICAgICAgICAgODQ0NHVzCmFicyB0aW1lb3V0OiAgICAgICAgICAg
ICAgICAgICAwdXMsIHJlbCB0aW1lb3V0OiAgICAgICAgICAgICAgICAgICAgICAwdXMKc2VucyBw
cmlvOiAyNTUsIGRlbGF5OiBtYXg9MHVzLCBjdXJyPTB1cwpyZXNvdXJjZXM6IDAwMDAwMDAwMDAw
MDAwMDAgW10gICBmbGFnczogMDAwMDAwMDAwMDAwMDAwMCBbdHNdCnBhcnRuZXI6IE5JTF9USFJE
LCBzYXZlZCBwYXJ0bmVyOiBOSUxfVEhSRCwgc2F2ZWQgc3RhdGU6IEFCT1JURUQgLCBzY2hlZHVs
ZXI6IFJPT1RUQVNLCj4gZ28KTDRfVGltZXNsaWNlKCkgYmVmb3JlOiB0cz0weDIwZmMsIHRxPTB4
MCwgcmVzdWx0PTB4MwpMNF9TZXRfVGltZXNsaWNlKCkgcmVzdWx0PTB4MwpMNF9UaW1lc2xpY2Uo
KSBhZnRlcjogdHM9MHgwLCB0cT0weDAsIHJlc3VsdD0weDMKLS0tICJieSB1c2VyIHJlcXVlc3Qi
IC0tLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKGVpcD0wMDAwMDAwMDAxMDAw
MTAzLCBlc3A9MDAwMDAwMDAwMTAwMjM2MCkgLS0tCj4gc2hvd3RjYgp0Y2IvdGlkL25hbWUgW2N1
cnJlbnRdOiBjdXJyZW50Cj09PSBUQ0I6IGZmZmZmZmZlODAwMzIwMDAgPT09IElEOiAwMDAwMDAz
MjAwMDAwMDAxID0gMDAwMDAwMDBiZjAwMDIwMC9mZmZmZmZmZmMwYTMyMDAwPT09IFBSSU86IDI1
NSA9PT09PT09PSA9PT0KVUlQOiAwMDAwMDAwMDAxMDAwMTA0ICAgcXVldWVzOiBSc3dsICAgICAg
ICAgICAgICB3YWl0IDogTklMX1RIUkQgICAgICAgIDpOSUxfVEhSRCAgICAgICAgICAgc3BhY2U6
IGZmZmZmZmZmYzBhMmMwMDAKVVNQOiAwMDAwMDAwMDAxMDAyMzYwICAgdHN0YXRlOiBSVU5OSU5H
ICAgICAgICAgICByZWFkeTogUk9PVFRBU0sgICAgICAgIDpST09UVEFTSyAgICAgICAgICAgcGRp
ciA6IDAwMDAwMDAwMDBhMmQwMDAKS1NQOiBmZmZmZmZmZTgwMDMyZWYwICAgc25kaGQgOiBOSUxf
VEhSRCAgICAgICAgICBzZW5kIDogTklMX1RIUkQgICAgICAgIDpOSUxfVEhSRCAgICAgICAgICAg
cGFnZXI6IFNJR01BMAp0b3RhbCBxdWFudDogICAgICAgICAgICAgICAgICAgMHVzLCB0cyBsZW5n
dGggIDogICAgICAgICAgICAgICAgICAgICAgMHVzLCBjdXJyIHRzOiAgICAgICAgICAgICAgICAw
dXMKYWJzIHRpbWVvdXQ6ICAgICAgICAgICAgICAgICAgIDB1cywgcmVsIHRpbWVvdXQ6ICAgICAg
ICAgICAgICAgICAgICAgIDB1cwpzZW5zIHByaW86IDI1NSwgZGVsYXk6IG1heD0wdXMsIGN1cnI9
MHVzCnJlc291cmNlczogMDAwMDAwMDAwMDAwMDAwMCBbXSAgIGZsYWdzOiAwMDAwMDAwMDAwMDAw
MDAwIFt0c10KcGFydG5lcjogTklMX1RIUkQsIHNhdmVkIHBhcnRuZXI6IE5JTF9USFJELCBzYXZl
ZCBzdGF0ZTogQUJPUlRFRCAsIHNjaGVkdWxlcjogUk9PVFRBU0sK
--14dae9cfc7de43133004be5a06fa
Content-Type: application/octet-stream; name="hello.cc"
Content-Disposition: attachment; filename="hello.cc"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_h1dnnhpx0

Ly8gaGVsbG8uY2MgLS0gdGVzdGluZyBMNF9TZXRfVGltZXNsaWNlKCkKCiNpbmNsdWRlIDxsNGlv
Lmg+CiNpbmNsdWRlIDxsNC90eXBlcy5oPgojaW5jbHVkZSA8bDQva2RlYnVnLmg+CiNpbmNsdWRl
IDxsNC90aHJlYWQuaD4KI2luY2x1ZGUgPGw0L3NjaGVkdWxlLmg+CgppbnQgbWFpbiAodm9pZCkK
ewogICAgcHJpbnRmICgiSGVsbG8gd29ybGQuLi5cblxuIik7CgogICAgTDRfVGhyZWFkSWRfdCBt
ZSA9IEw0X015c2VsZigpOwogICAgTDRfV29yZF90IHJlc3VsdDsKICAgIEw0X1RpbWVfdCB0cywg
dHE7CgogICAgLy8gY2hlY2sgdHMsIHRxIGluIHRoZSBrZXJuZWwgZGVidWdnZXIgKHVzZSAndCcg
W2N1cnJlbnRdKQogICAgTDRfS0RCX0VudGVyKCJieSB1c2VyIHJlcXVlc3QiKTsKCiAgICAvLyBx
dWVyeSBhbmQgcmVwb3J0IHRpbWVzbGljZSBhbmQgdG90YWwgcXVhbnR1bQogICAgcmVzdWx0ID0g
TDRfVGltZXNsaWNlKG1lLCAmdHMsICZ0cSk7CiAgICBwcmludGYoIkw0X1RpbWVzbGljZSgpIGJl
Zm9yZTogdHM9MHglaHgsIHRxPTB4JWh4LCByZXN1bHQ9MHglbGRcbiIsCgkgICB0cy5yYXcsIHRx
LnJhdywgcmVzdWx0KTsKCiAgICAvLyBtYW51YWxseSBzZXQgdGltZXNsaXplIGFuZCB0aW1lIHF1
YW50dW0KICAgIHJlc3VsdCA9IEw0X1NldF9UaW1lc2xpY2UobWUsCgkJCSAgICAgIEw0X1RpbWVQ
ZXJpb2QoKEw0X1dvcmQ2NF90KTIwMDAwKSwKCQkJICAgICAgTDRfVGltZVBlcmlvZCgoTDRfV29y
ZDY0X3QpMTAwMDAwKSk7CiAgICBwcmludGYoIkw0X1NldF9UaW1lc2xpY2UoKSByZXN1bHQ9MHgl
bGRcbiIsIHJlc3VsdCk7CgogICAgLy8gcXVlcnkgYW5kIHJlcG9ydCBvZiB0aW1lc2xpY2UgYW5k
IHRvdGFsIHF1YW50dW0gY2hhbmdlZAogICAgcmVzdWx0ID0gTDRfVGltZXNsaWNlKG1lLCAmdHMs
ICZ0cSk7CiAgICBwcmludGYoIkw0X1RpbWVzbGljZSgpIGFmdGVyOiB0cz0weCVoeCwgdHE9MHgl
aHgsIHJlc3VsdD0weCVsZFxuIiwKCSAgIHRzLnJhdywgdHEucmF3LCByZXN1bHQpOwoKICAgIC8v
IGNoZWNrIHRoZSByZXN1bHQgaW4gdGhlIGtlcm5lbCBkZWJ1Z2dlciAodXNlICd0JyBbY3VycmVu
dF0pCiAgICBMNF9LREJfRW50ZXIoImJ5IHVzZXIgcmVxdWVzdCIpOwoKICAgIHByaW50ZigiU3Bp
bm5pbmcgcm91bmQgYW5kIHJvdW5kIChraWxsIG1lISlcbiIpOwogICAgZm9yICg7OykgOwogICAg
cmV0dXJuIDA7Cn0K
--14dae9cfc7de43133004be5a06fa--