From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: [PATCH 07/16] xen: sched: prepare a .switch_sched hook for Credit2 Date: Fri, 18 Mar 2016 20:04:47 +0100 Message-ID: <20160318190447.8117.72371.stgit@Solace.station> References: <20160318185524.8117.74837.stgit@Solace.station> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1agzhe-0000GE-93 for xen-devel@lists.xenproject.org; Fri, 18 Mar 2016 19:04:54 +0000 Received: by mail-wm0-f67.google.com with SMTP id x188so8147311wmg.0 for ; Fri, 18 Mar 2016 12:04:52 -0700 (PDT) In-Reply-To: <20160318185524.8117.74837.stgit@Solace.station> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: George Dunlap List-Id: xen-devel@lists.xenproject.org SW4gZmFjdCwgcmlnaHQgbm93LCBpZiB3ZSBzd2l0Y2ggY3B1IFggZnJvbSwgc2F5LApDcmVkaXQg dG8gQ3JlZGl0Miwgd2UgZG86Cgogc2NoZWR1bGVfY3B1X3N3aXRjaChYLCBjc2NoZWQgLS0+IGNz Y2hlZDIpOgogICAvL3NjaGVkdWxlclt4XSBpcyBjc2NoZWQKICAgLy9zY2hlZHVsZV9sb2NrW3hd IGlzIGNzY2hlZF9sb2NrCiAgIGNzY2hlZDJfYWxsb2NfcGRhdGEoeCkKICAgY3NjaGVkMl9pbml0 X3BkYXRhKHgpCiAgICAgcGNwdV9zY2hlZHVsZV9sb2NrKHgpIC0tPiB0YWtlcyBjc2NoZWRfbG9j awogICAgIHNjaGVkdWxlX2xvY2tbeF0gPSBjc2NoZWQyX2xvY2sKICAgICBzcGluX3VubG9jayhj c2NoZWRfbG9jaykKICAgWzFdCiAgIHBjcHVfc2NoZWR1bGVfbG9jayh4KSAtLS0tPiB0YWtlcyBj c2NoZWQyX2xvY2sKICAgc2NoZWR1bGVyW1hdID0gY3NjaGVkMgogICBwY3B1X3NjaGVkdWxlX3Vu bG9jayh4KSAtLT4gdW5sb2NrcyBjc2NoZWQyX2xvY2sKICAgY3NjaGVkX2ZyZWVfcGRhdGEoeCkK ClNvLCBpZiBhbnl0aGluZyBzY2hlZHVsaW5nIHJlbGF0ZWQgYW5kIGludm9sdmluZyBDUFUgWApo YXBwZW5zLCBhdCB0aW1lIFsxXSwgd2Ugd2lsbDoKIC0gdGFrZSBjc2NoZWQyX2xvY2ssCiAtIG9w ZXJhdGUgb24gQ3JlZGl0MSBmdW5jdGlvbnMgYW5kIGRhdGEgc3RydWN0dXJlcywKd2hpY2ggaXMg bm8gZ29vZCEKCkZ1cnRoZXJtb3JlLCBpZiB3ZSBzd2l0Y2ggY3B1IFggZnJvbSBSVERTIHRvIENy ZWRpdDIsCndlIGRvOgoKIHNjaGVkdWxlX2NwdV9zd2l0Y2goWCwgUlREUyAtLT4gY3NjaGVkMik6 CiAgIC8vc2NoZWR1bGVyW3hdIGlzIHJ0ZHMKICAgLy9zY2hlZHVsZV9sb2NrW3hdIGlzIHJ0ZHNf bG9jawogICBjc2NoZWQyX2FsbG9jX3BkYXRhKHgpCiAgIGNzY2hlZDJfaW5pdF9wZGF0YSh4KQog ICAgIHBjcHVfc2NoZWR1bGVfbG9jayh4KSAtLT4gdGFrZXMgcnRkc19sb2NrCiAgICAgc2NoZWR1 bGVfbG9ja1t4XSA9IGNzY2hlZDJfbG9jawogICAgIHNwaW5fdW5sb2NrKHJ0ZHNfbG9jaykKICAg cGNwdV9zY2hlZHVsZV9sb2NrKHgpIC0tLS0+IHRha2VzIGNzY2hlZDJfbG9jawogICBzY2hlZHVs ZXJbeF0gPSBjc2NoZWQyCiAgIHBjcHVfc2NoZWR1bGVfdW5sb2NrKHgpIC0tPiB1bmxvY2tzIGNz Y2hlZDJfbG9jawogICBydGRzX2ZyZWVfcGRhdGEoeCkKICAgICBzcGluX2xvY2socnRkc19sb2Nr KQogICAgIEFTU0VSVChzY2hlZHVsZV9sb2NrW3hdID09IHJ0ZHNfbG9jaykgWzJdCiAgICAgc2No ZWR1bGVfbG9ja1t4XSA9IERFRkFVTFRfU0NIRURVTEVfTE9DSyBbM10KICAgICBzcGluX3VubG9j ayhydGRzX2xvY2spCgpXaGljaCBtZWFuczoKIDEpIHRoZSBBU1NFUlQgYXQgWzJdIHRyaWdnZXJz IQogMikgQXQgWzNdLCB3ZSBzY3JldyB1cCB0aGUgbG9jayByZW1hcHBpbmcgd2UndmUgZG9uZSBm b3IKICAgIG91cnNlbGYgaW4gY3NjaGVkMl9pbml0X3BkYXRhKCkhCgpUaGUgZm9ybWVyIHByb2Js ZW0gYXJpc2VzIGJlY2F1c2UgdGhlcmUgaXMgYSB3aW5kb3cgZHVyaW5nCndoaWNoIHRoZSBsb2Nr IGlzIGFscmVhZHkgdGhlIG5ldyBvbmUsIGJ1dCB0aGUgc2NoZWR1bGVyIGlzCnN0aWxsIHRoZSBv bGQgb25lLiBUaGUgbGF0dGVyIHByb2JsZW0sIGJlY2FzZSB3ZSBsZXQgb3RoZXIncwpzY2hlZHVs ZXIgbWVzcyB3aXRoIGxvY2sgKHJlKW1hcHBpbmcgZHVyaW5nIHRoZWlyIGZyZWVpbmcKcGF0aCwg aW5zdGVhZCBvZiBkb2luZyBpdCBvdXJzZWxmLgoKVGhpcyBwYXRjaCwgdGhlcmVmb3JlLCBpbnRy b2R1Y2VzIHRoZSBuZXcgc3dpdGNoX3NjaGVkIGhvb2ssCmZvciBDcmVkaXQyLCBhcyBkb25lIGFs cmVhZHkgKGluICJ4ZW46IHNjaGVkOiBwcmVwYXJlCi5zd2l0Y2hfc2NoZWQgZm9yIENyZWRpdDEi KSBmb3IgQ3JlZGl0MS4KClNpZ25lZC1vZmYtYnk6IERhcmlvIEZhZ2dpb2xpIDxkYXJpby5mYWdn aW9saUBjaXRyaXguY29tPgotLS0KQ2M6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAZXUu Y2l0cml4LmNvbT4KLS0tCiB4ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYyB8ICAgNDMgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDQx IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9z Y2hlZF9jcmVkaXQyLmMgYi94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYwppbmRleCA5MTljYTEz Li4yNWQ4ZTg1IDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYworKysgYi94 ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYwpAQCAtMTk2OCw3ICsxOTY4LDggQEAgc3RhdGljIHZv aWQgZGVhY3RpdmF0ZV9ydW5xdWV1ZShzdHJ1Y3QgY3NjaGVkMl9wcml2YXRlICpwcnYsIGludCBy cWkpCiAgICAgY3B1bWFza19jbGVhcl9jcHUocnFpLCAmcHJ2LT5hY3RpdmVfcXVldWVzKTsKIH0K IAotc3RhdGljIHZvaWQKKy8qIFJldHVybnMgdGhlIElEIG9mIHRoZSBydW5xdWV1ZSB0aGUgY3B1 IGlzIGFzc2lnbmVkIHRvLiAqLworc3RhdGljIHVuc2lnbmVkCiBpbml0X3BkYXRhKHN0cnVjdCBj c2NoZWQyX3ByaXZhdGUgKnBydiwgdW5zaWduZWQgaW50IGNwdSkKIHsKICAgICB1bnNpZ25lZCBy cWk7CkBAIC0yMDIxLDcgKzIwMjIsNyBAQCBpbml0X3BkYXRhKHN0cnVjdCBjc2NoZWQyX3ByaXZh dGUgKnBydiwgdW5zaWduZWQgaW50IGNwdSkKIAogICAgIGNwdW1hc2tfc2V0X2NwdShjcHUsICZw cnYtPmluaXRpYWxpemVkKTsKIAotICAgIHJldHVybjsKKyAgICByZXR1cm4gcnFpOwogfQogCiBz dGF0aWMgdm9pZApAQCAtMjAzNSw2ICsyMDM2LDQzIEBAIGNzY2hlZDJfaW5pdF9wZGF0YShjb25z dCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHZvaWQgKnBkYXRhLCBpbnQgY3B1KQogICAgIHNwaW5f dW5sb2NrX2lycXJlc3RvcmUoJnBydi0+bG9jaywgZmxhZ3MpOwogfQogCisvKiBDaGFuZ2UgdGhl IHNjaGVkdWxlciBvZiBjcHUgdG8gdXMgKENyZWRpdDIpLiAqLworc3RhdGljIHZvaWQKK2NzY2hl ZDJfc3dpdGNoX3NjaGVkKHN0cnVjdCBzY2hlZHVsZXIgKm5ld19vcHMsIHVuc2lnbmVkIGludCBj cHUsCisgICAgICAgICAgICAgICAgICAgICB2b2lkICpwZGF0YSwgdm9pZCAqdmRhdGEpCit7Cisg ICAgc3RydWN0IGNzY2hlZDJfcHJpdmF0ZSAqcHJ2ID0gQ1NDSEVEMl9QUklWKG5ld19vcHMpOwor ICAgIHN0cnVjdCBjc2NoZWQyX3ZjcHUgKnN2YyA9IHZkYXRhOworICAgIHNwaW5sb2NrX3QgKm9s ZF9sb2NrOworICAgIHVuc2lnbmVkIHJxaTsKKworICAgIEFTU0VSVCghcGRhdGEgJiYgc3ZjICYm IGlzX2lkbGVfdmNwdShzdmMtPnZjcHUpKTsKKworICAgIHNwaW5fbG9ja19pcnEoJnBydi0+bG9j ayk7CisgICAgLyoKKyAgICAgKiBXZSBtYXkgYmUgYWNxdWlyaW5nIHRoZSBsb2NrIG9mIGFub3Ro ZXIgc2NoZWR1bGVyIGhlcmUgKHRoZSBvbmUgY3B1CisgICAgICogc3RpbGwgYmVsb25ncyB0byB3 aGVuIGNhbGxpbmcgdGhpcyBmdW5jdGlvbikuIFRoYXQgaXMgb2sgYXMsIGFueW9uZQorICAgICAq IHRyeWluZyB0byBzY2hlZHVsZSBvbiB0aGlzIGNwdSB3aWxsIGJsb2NrIHVudGlsIHdoZW4gd2Ug cmVsZWFzZSB0aGF0CisgICAgICogbG9jayAoYm90dG9tIG9mIHRoaXMgZnVuY3Rpb24pLiBXaGVu IHVuYmxvY2tlZCAtLWJlY2F1c2Ugb2YgdGhlIGxvb3AKKyAgICAgKiBpbXBsZW1lbnRlZCBieSBz Y2hlZHVsZV9sb2NrKCkgZnVuY3Rpb25zLS0gaGUgd2lsbCBub3RpY2UgdGhlIGxvY2sKKyAgICAg KiBjaGFuZ2VkLCBhbmQgYWNxdWlyZSBvdXJzIGJlZm9yZSBiZWluZyBhYmxlIHRvIHByb2NlZWQu CisgICAgICovCisgICAgb2xkX2xvY2sgPSBwY3B1X3NjaGVkdWxlX2xvY2soY3B1KTsKKworICAg IGlkbGVfdmNwdVtjcHVdLT5zY2hlZF9wcml2ID0gdmRhdGE7CisKKyAgICBycWkgPSBpbml0X3Bk YXRhKHBydiwgY3B1KTsKKworICAgIHBlcl9jcHUoc2NoZWR1bGVyLCBjcHUpID0gbmV3X29wczsK KyAgICBwZXJfY3B1KHNjaGVkdWxlX2RhdGEsIGNwdSkuc2NoZWRfcHJpdiA9IE5VTEw7IC8qIG5v IHBkYXRhICovCisgICAgLyogKFJlPylyb3V0ZSB0aGUgbG9jayB0byB0aGUgcGVyIHBDUFUgbG9j ay4gKi8KKyAgICBwZXJfY3B1KHNjaGVkdWxlX2RhdGEsIGNwdSkuc2NoZWR1bGVfbG9jayA9ICZw cnYtPnJxZFtycWldLmxvY2s7CisKKyAgICAvKiBfTm90XyBwY3B1X3NjaGVkdWxlX3VubG9jaygp OiBzY2hlZHVsZV9sb2NrIG1heSBoYXZlIGNoYW5nZWQhICovCisgICAgc3Bpbl91bmxvY2sob2xk X2xvY2spOworICAgIHNwaW5fdW5sb2NrX2lycSgmcHJ2LT5sb2NrKTsKK30KKwogc3RhdGljIHZv aWQKIGNzY2hlZDJfZnJlZV9wZGF0YShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHZvaWQg KnBjcHUsIGludCBjcHUpCiB7CkBAIC0yMTY3LDYgKzIyMDUsNyBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IHNjaGVkdWxlciBzY2hlZF9jcmVkaXQyX2RlZiA9IHsKICAgICAuZnJlZV92ZGF0YSAgICAg PSBjc2NoZWQyX2ZyZWVfdmRhdGEsCiAgICAgLmluaXRfcGRhdGEgICAgID0gY3NjaGVkMl9pbml0 X3BkYXRhLAogICAgIC5mcmVlX3BkYXRhICAgICA9IGNzY2hlZDJfZnJlZV9wZGF0YSwKKyAgICAu c3dpdGNoX3NjaGVkICAgPSBjc2NoZWQyX3N3aXRjaF9zY2hlZCwKICAgICAuYWxsb2NfZG9tZGF0 YSAgPSBjc2NoZWQyX2FsbG9jX2RvbWRhdGEsCiAgICAgLmZyZWVfZG9tZGF0YSAgID0gY3NjaGVk Ml9mcmVlX2RvbWRhdGEsCiB9OwoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5v cmcKaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==