From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ronald Rojas Subject: [PATCH RFC 17/59] controller: Collect and display statistics on WorkerSets Date: Wed, 28 Dec 2016 20:14:10 -0500 Message-ID: <1482974092-15891-17-git-send-email-ronladred@gmail.com> References: <1482974092-15891-1-git-send-email-ronladred@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1482974092-15891-1-git-send-email-ronladred@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel , Ian Jackson , Wei Liu , George Dunlap , George Dunlap List-Id: xen-devel@lists.xenproject.org RnJvbTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjaXRyaXguY29tPgoKSW50cm9kdWNl IFdvcmtlclNldFN1bW1hcnksIHRvIGNvbnRhaW4gV29ya2VyU3VtbWFyeSdzIGFuZCBjb2xsZWN0 CmRhdGEgZm9yIHRoZSBzZXQuCgpGb3Igbm93ICJpZiBmYWxzZSItb3V0IHJlcG9ydGluZyBvZiBp bmRpdmlkdWFsIHdvcmtlciBhdmVyYWdlczsgd2UgY2FuCmFkZCB0aGlzIGJhY2sgaW4gYXMgYW4g b3B0aW9uIGxhdGVyLgoKU2lnbmVkLW9mZi1ieTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxh cEBjaXRyaXguY29tPgotLS0KIGJlbmNobWFyay5nbyB8IDE1NiArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQs IDEyMSBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9iZW5jaG1h cmsuZ28gYi9iZW5jaG1hcmsuZ28KaW5kZXggYWFhNGM5OC4uNGNjOWQ2MSAxMDA2NDQKLS0tIGEv YmVuY2htYXJrLmdvCisrKyBiL2JlbmNobWFyay5nbwpAQCAtMjMsMTQgKzIzLDkgQEAgaW1wb3J0 ICgKIAkib3MiCiAJImlvL2lvdXRpbCIKIAkiZW5jb2RpbmcvanNvbiIKKwkibWF0aCIKICkKIAot dHlwZSBXb3JrZXJTdW1tYXJ5IHN0cnVjdCB7Ci0JTWF4VHB1dCBmbG9hdDY0Ci0JQXZnVHB1dCBm bG9hdDY0Ci0JTWluVHB1dCBmbG9hdDY0Ci19Ci0KIHR5cGUgV29ya2VySWQgc3RydWN0IHsKIAlT ZXQgaW50CiAJSWQgaW50CkBAIC03Nyw5ICs3MiwyNiBAQCBmdW5jIFRocm91Z2hwdXQobHQgaW50 LCBsbSBpbnQsIHQgaW50LCBtIGludCkgKHRwdXQgZmxvYXQ2NCkgewogCXJldHVybgogfQogCit0 eXBlIFdvcmtlclN1bW1hcnkgc3RydWN0IHsKKwlNYXhUcHV0IGZsb2F0NjQKKwlBdmdUcHV0IGZs b2F0NjQKKwlNaW5UcHV0IGZsb2F0NjQKK30KKwordHlwZSBXb3JrZXJTZXRTdW1tYXJ5IHN0cnVj dCB7CisJV29ya2VycyAgICBbXVdvcmtlclN1bW1hcnkKKwlUb3RhbFRwdXQgICAgIGZsb2F0NjQK KwlNYXhUcHV0ICAgICAgIGZsb2F0NjQKKwlBdmdBdmdUcHV0ICAgIGZsb2F0NjQKKwlBdmdTdGRE ZXZUcHV0IGZsb2F0NjQKKwlBdmdNYXhUcHV0ICAgIGZsb2F0NjQKKwlBdmdNaW5UcHV0ICAgIGZs b2F0NjQKKwlNaW5UcHV0ICAgICAgIGZsb2F0NjQKK30KKwogdHlwZSBCZW5jaG1hcmtSdW5EYXRh IHN0cnVjdCB7CiAJUmF3IFtdV29ya2VyUmVwb3J0ICAgICAgIGBqc29uOiIsb21pdGVtcHR5ImAK LQlTdW1tYXJ5IG1hcFtXb3JrZXJJZF0qV29ya2VyU3VtbWFyeSAgYGpzb246IixvbWl0ZW1wdHki YAorCVN1bW1hcnkgW11Xb3JrZXJTZXRTdW1tYXJ5ICBganNvbjoiLG9taXRlbXB0eSJgCiB9CiAK IHR5cGUgQmVuY2htYXJrUnVuIHN0cnVjdCB7CkBAIC05MCw2ICsxMDIsMTIgQEAgdHlwZSBCZW5j aG1hcmtSdW4gc3RydWN0IHsKIAlSZXN1bHRzIEJlbmNobWFya1J1bkRhdGEgCiB9CiAKK3R5cGUg QmVuY2htYXJrUGxhbiBzdHJ1Y3QgeworCWZpbGVuYW1lIHN0cmluZworCVdvcmtlclR5cGUgaW50 CisJUnVucyBbXUJlbmNobWFya1J1bgorfQorCiBmdW5jIChydW4gKkJlbmNobWFya1J1bikgY2hl Y2tTdW1tYXJ5KCkgKGRvbmUgYm9vbCwgZXJyIGVycm9yKSB7CiAJaWYgcnVuLlJlc3VsdHMuU3Vt bWFyeSAhPSBuaWwgewogCQlkb25lID0gdHJ1ZQpAQCAtMTA1LDcgKzEyMyw3IEBAIGZ1bmMgKHJ1 biAqQmVuY2htYXJrUnVuKSBQcm9jZXNzKCkgKGVyciBlcnJvcikgewogCQlyZXR1cm4KIAl9CiAK LQlydW4uUmVzdWx0cy5TdW1tYXJ5ID0gbWFrZShtYXBbV29ya2VySWRdKldvcmtlclN1bW1hcnkp CisJcnVuLlJlc3VsdHMuU3VtbWFyeSA9IG1ha2UoW11Xb3JrZXJTZXRTdW1tYXJ5LCBsZW4ocnVu LldvcmtlclNldHMpKQogCiAJdHlwZSBEYXRhIHN0cnVjdHsKIAkJc3RhcnRUaW1lIGludApAQCAt MTE4LDE4ICsxMzYsMzIgQEAgZnVuYyAocnVuICpCZW5jaG1hcmtSdW4pIFByb2Nlc3MoKSAoZXJy IGVycm9yKSB7CiAJLy8gRklYTUU6IEZpbHRlciBvdXQgcmVzdWx0cyB3aGljaCBzdGFydGVkIGJl Zm9yZSBhbGwgaGF2ZSBzdGFydGVkCiAJZm9yIGkgOj0gcmFuZ2UgcnVuLlJlc3VsdHMuUmF3IHsK IAkJZSA6PSBydW4uUmVzdWx0cy5SYXdbaV0KKworCQlpZiBlLklkLlNldCA+IGxlbihydW4uUmVz dWx0cy5TdW1tYXJ5KSB7CisJCQlyZXR1cm4gZm10LkVycm9yZigiSW50ZXJuYWwgZXJyb3I6IGUu SWQuU2V0ICVkID4gbGVuKFJlc3VsdHMuU3VtbWFyeSkgJWRcbiIsCisJCQkJZS5JZC5TZXQsIGxl bihydW4uUmVzdWx0cy5TdW1tYXJ5KSkKKwkJfQogCQkKKwkJaWYgcnVuLlJlc3VsdHMuU3VtbWFy eVtlLklkLlNldF0uV29ya2VycyA9PSBuaWwgeworCQkJcnVuLlJlc3VsdHMuU3VtbWFyeVtlLklk LlNldF0uV29ya2VycyA9IG1ha2UoW11Xb3JrZXJTdW1tYXJ5LAorCQkJCXJ1bi5Xb3JrZXJTZXRz W2UuSWQuU2V0XS5Db3VudCkKKwkJfQorCisJCXdzIDo9ICZydW4uUmVzdWx0cy5TdW1tYXJ5W2Uu SWQuU2V0XQorCQkKKwkJaWYgZS5JZC5JZCA+IGxlbih3cy5Xb3JrZXJzKSB7CisJCQlyZXR1cm4g Zm10LkVycm9yZigiSW50ZXJuYWwgZXJyb3I6IGUuSWQuSWQgJWQgPiBsZW4oUmVzdWx0cy5TdW1t YXJ5W10uV29ya2VycykgJWRcbiIsCisJCQkJZS5JZC5JZCwgbGVuKHdzLldvcmtlcnMpKQorCQl9 CisKKwkJcyA6PSAmd3MuV29ya2Vyc1tlLklkLklkXQorCiAJCWQgOj0gZGF0YVtlLklkXQogCQlp ZiBkID09IG5pbCB7CiAJCQlkID0gJkRhdGF7fQogCQkJZGF0YVtlLklkXSA9IGQKIAkJfQotCQlz IDo9IHJ1bi5SZXN1bHRzLlN1bW1hcnlbZS5JZF0KLQkJaWYgcyA9PSBuaWwgewotCQkJcyA9ICZX b3JrZXJTdW1tYXJ5e30KLQkJCXJ1bi5SZXN1bHRzLlN1bW1hcnlbZS5JZF0gPSBzCi0JCX0KLQor CQkJCiAJCWlmIGQuc3RhcnRUaW1lID09IDAgewogCQkJZC5zdGFydFRpbWUgPSBlLk5vdwogCQl9 IGVsc2UgewpAQCAtMTQxLDE2ICsxNzMsNjMgQEAgZnVuYyAocnVuICpCZW5jaG1hcmtSdW4pIFBy b2Nlc3MoKSAoZXJyIGVycm9yKSB7CiAJCQlpZiB0cHV0IDwgcy5NaW5UcHV0IHx8IHMuTWluVHB1 dCA9PSAwIHsKIAkJCQlzLk1pblRwdXQgPSB0cHV0CiAJCQl9CisJCQlpZiB0cHV0ID4gd3MuTWF4 VHB1dCB7CisJCQkJd3MuTWF4VHB1dCA9IHRwdXQKKwkJCX0KKwkJCWlmIHRwdXQgPCB3cy5NaW5U cHV0IHx8IHdzLk1pblRwdXQgPT0gMCB7CisJCQkJd3MuTWluVHB1dCA9IHRwdXQKKwkJCX0KIAkJ fQogCQlkLmxhc3RUaW1lID0gZS5Ob3cKIAkJZC5sYXN0TW9wcyA9IGUuTW9wcwogCX0KIAotCWZv ciBJZCA6PSByYW5nZSBkYXRhIHsKLQkJcnVuLlJlc3VsdHMuU3VtbWFyeVtJZF0uQXZnVHB1dCA9 IFRocm91Z2hwdXQoZGF0YVtJZF0uc3RhcnRUaW1lLAotCQkJMCwgZGF0YVtJZF0ubGFzdFRpbWUs IGRhdGFbSWRdLmxhc3RNb3BzKQorCWZvciBJZCwgZCA6PSByYW5nZSBkYXRhIHsKKwkJd3MgOj0g JnJ1bi5SZXN1bHRzLlN1bW1hcnlbSWQuU2V0XQorCQlzIDo9ICZ3cy5Xb3JrZXJzW0lkLklkXQor CisJCXMuQXZnVHB1dCA9IFRocm91Z2hwdXQoZC5zdGFydFRpbWUsIDAsIGQubGFzdFRpbWUsIGQu bGFzdE1vcHMpCisJCWlmIHMuQXZnVHB1dCA+IHdzLkF2Z01heFRwdXQgeworCQkJd3MuQXZnTWF4 VHB1dCA9IHMuQXZnVHB1dAorCQl9CisJCWlmIHMuQXZnVHB1dCA8IHdzLkF2Z01pblRwdXQgfHwg d3MuQXZnTWluVHB1dCA9PSAwIHsKKwkJCXdzLkF2Z01pblRwdXQgPSBzLkF2Z1RwdXQKKwkJfQor CQkKIAl9Ci0JCisKKwkvLyBDYWxjdWxhdGUgdGhlIGF2ZXJhZ2Utb2YtYXZlcmFnZXMgZm9yIGVh Y2ggc2V0CisJZm9yIHNldCA6PSByYW5nZSBydW4uUmVzdWx0cy5TdW1tYXJ5IHsKKwkJd3MgOj0g JnJ1bi5SZXN1bHRzLlN1bW1hcnlbc2V0XQorCQkKKwkJdmFyIHRvdGFsIGZsb2F0NjQKKwkJdmFy IGNvdW50IGludAorCQlmb3IgaWQgOj0gcmFuZ2Ugd3MuV29ya2VycyB7CisJCQl0b3RhbCArPSB3 cy5Xb3JrZXJzW2lkXS5BdmdUcHV0CisJCQljb3VudCsrCisJCX0KKworCQkvLyBGSVhNRSAtLSBJ cyB0aGlzIGxlZ2l0PworCQl3cy5Ub3RhbFRwdXQgPSB0b3RhbAorCQl3cy5BdmdBdmdUcHV0ID0g dG90YWwgLyBmbG9hdDY0KGNvdW50KQorCX0KKworCS8vIFRoZW4gY2FsY3VsYXRlIHRoZSBzdGFu ZGFyZCBkZXZpYXRpb24KKwlmb3Igc2V0IDo9IHJhbmdlIHJ1bi5SZXN1bHRzLlN1bW1hcnkgewor CQl3cyA6PSAmcnVuLlJlc3VsdHMuU3VtbWFyeVtzZXRdCisJCQorCQl2YXIgdG90YWwgZmxvYXQ2 NAorCQl2YXIgY291bnQgaW50CisJCQorCQlmb3IgaWQgOj0gcmFuZ2Ugd3MuV29ya2VycyB7CisJ CQlkIDo9IHdzLldvcmtlcnNbaWRdLkF2Z1RwdXQgLSB3cy5BdmdBdmdUcHV0CisJCQl0b3RhbCAr PSBkICogZAorCQkJY291bnQrKworCQl9CisJCXYgOj0gdG90YWwgLyBmbG9hdDY0KGNvdW50KQor CQl3cy5BdmdTdGREZXZUcHV0ID0gbWF0aC5TcXJ0KHYpCisJfQorCiAJcmV0dXJuCiB9CiAKQEAg LTE2NSwzMyArMjQ0LDQwIEBAIGZ1bmMgKHJ1biAqQmVuY2htYXJrUnVuKSBUZXh0UmVwb3J0KCkg KGVyciBlcnJvcikgewogCQlyZXR1cm4KIAl9CiAKLQlmbXQuUHJpbnRmKCI9PSBSVU4gJXMgPT0i LCBydW4uTGFiZWwpCisJZm10LlByaW50ZigiPT0gUlVOICVzID09XG4iLCBydW4uTGFiZWwpCiAK LQl3U3RhcnQgOj0gMAotCWZvciBpIDo9IHJhbmdlIHJ1bi5Xb3JrZXJTZXRzIHsKLQkJd3MgOj0g JnJ1bi5Xb3JrZXJTZXRzW2ldCi0JCW4gOj0gd3MuQ291bnQKKwlmb3Igc2V0IDo9IHJhbmdlIHJ1 bi5Xb3JrZXJTZXRzIHsKKwkJd3MgOj0gJnJ1bi5Xb3JrZXJTZXRzW3NldF0KIAkJcGFyYW1zIDo9 ICIiCiAJCWZvciBfLCBzIDo9IHJhbmdlIHdzLlBhcmFtcy5BcmdzIHsKIAkJCXBhcmFtcyA9IGZt dC5TcHJpbnRmKCIlcyAlcyIsIHBhcmFtcywgcykKIAkJfQotCQlmbXQuUHJpbnRmKCJbJWQtJWRd OiAlc1xuIiwgd1N0YXJ0LCB3U3RhcnQrbi0xLCBwYXJhbXMpCi0JCXdTdGFydCArPSBuCisJCWZt dC5QcmludGYoIlNldCAlZDogJXNcbiIsIHNldCwgcGFyYW1zKQogCX0KIAotCWZtdC5QcmludGYo IlxuJThzICU4cyAlOHMgJThzXG4iLCAiaWQiLCAiYXZnIiwgIm1pbiIsICJtYXgiKQotCWZvciBp ZCwgcyA6PSByYW5nZSBydW4uUmVzdWx0cy5TdW1tYXJ5IHsKLQkJZm10LlByaW50ZigiJTh2ICU4 LjJmICU4LjJmICU4LjJmXG4iLAotCQkJaWQsIHMuQXZnVHB1dCwgcy5NaW5UcHV0LCBzLk1heFRw dXQpCisJZm10LlByaW50ZigiXG4lOHMgJThzICU4cyAlOHMgJThzICU4cyAlOHMgJThzXG4iLCAi c2V0IiwgInRvdGFsIiwgImF2Z2F2ZyIsICJzdGRldiIsICJhdmdtYXgiLCAiYXZnbWluIiwgInRv dG1heCIsICJ0b3RtaW4iKQorCWZvciBzZXQgOj0gcmFuZ2UgcnVuLldvcmtlclNldHMgeworCQl3 cyA6PSAmcnVuLlJlc3VsdHMuU3VtbWFyeVtzZXRdCisJCWZtdC5QcmludGYoIiU4ZCAlOC4yZiAl OC4yZiAlOC4yZiAlOC4yZiAlOC4yZiAlOC4yZiAlOC4yZlxuIiwKKwkJCXNldCwgd3MuVG90YWxU cHV0LCB3cy5BdmdBdmdUcHV0LCB3cy5BdmdTdGREZXZUcHV0LCB3cy5BdmdNYXhUcHV0LCB3cy5B dmdNaW5UcHV0LAorCQkJd3MuTWF4VHB1dCwgd3MuTWluVHB1dCkKKwkJCiAJfQogCi0JcmV0dXJu Ci19CisJaWYgZmFsc2UgeworCQlmbXQuUHJpbnRmKCJcbiU4cyAlOHMgJThzICU4c1xuIiwgIndv cmtlcmlkIiwgImF2ZyIsICJtaW4iLCAibWF4IikKKwkJZm9yIHNldCA6PSByYW5nZSBydW4uUmVz dWx0cy5TdW1tYXJ5IHsKKwkJCWZvciBpZCA6PSByYW5nZSBydW4uUmVzdWx0cy5TdW1tYXJ5W3Nl dF0uV29ya2VycyB7CisJCQkJcyA6PSBydW4uUmVzdWx0cy5TdW1tYXJ5W3NldF0uV29ya2Vyc1tp ZF0KKwkJCQlmbXQuUHJpbnRmKCIlMmQ6JTJkICAgICU4LjJmICU4LjJmICU4LjJmXG4iLAorCQkJ CQlzZXQsIGlkLCBzLkF2Z1RwdXQsIHMuTWluVHB1dCwgcy5NYXhUcHV0KQorCQkJfQorCQl9CisJ fQogCi10eXBlIEJlbmNobWFya1BsYW4gc3RydWN0IHsKLQlmaWxlbmFtZSBzdHJpbmcKLQlXb3Jr ZXJUeXBlIGludAotCVJ1bnMgW11CZW5jaG1hcmtSdW4KKwlmbXQuUHJpbnRmKCJcblxuIikKKwor CXJldHVybgogfQogCiBmdW5jIExvYWRCZW5jaG1hcmsoZmlsZW5hbWUgc3RyaW5nKSAocGxhbiBC ZW5jaG1hcmtQbGFuLCBlcnIgZXJyb3IpIHsKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==