From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 3/3] tests/x86emul: Improve the utility of verbose mode Date: Tue, 6 Mar 2018 20:24:52 +0000 Message-ID: <1520367892-15055-4-git-send-email-andrew.cooper3@citrix.com> References: <1520367892-15055-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1520367892-15055-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Jan Beulich List-Id: xen-devel@lists.xenproject.org ICogQWxpZ24gdGhlIGZ1bmN0aW9uIGNhbGwgbmFtZXMsIHdoaWNoIGFsaWducyBhbGwgc3Vic2Vx dWVudCBkYXRhIG9uIHRoZQogICBsaW5lLgogKiBDb252ZXJ0IHg4Nl9zZWdtZW50IGFuZCBYODZF TVVMXyBjb25zdGFudHMgdG8gc3RyaW5ncyByYXRoZXIgdGhhbiBwcmludGluZwogICByYXcgbnVt YmVycy4KICogTW92ZSB0aGUgcHJpbnRpbmcgdG8gdGhlIGVuZCBvZiB0aGUgZnVuY3Rpb24sIGFu ZCBlaXRoZXIgaGV4ZHVtcCB0aGUgcmVzdWx0CiAgIG9yIHByaW50IHRoZSBmYWlsdXJlIGNvZGUu CgpObyBjaGFuZ2UgYnkgZGVmYXVsdCBhcyB2ZXJib3NlIGlzIG9mZi4KClNpZ25lZC1vZmYtYnk6 IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQpDQzogSmFuIEJl dWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPgotLS0KIHRvb2xzL3Rlc3RzL3g4Nl9lbXVsYXRvci90 ZXN0X3g4Nl9lbXVsYXRvci5jIHwgOTkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogMSBm aWxlIGNoYW5nZWQsIDg3IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3Rvb2xzL3Rlc3RzL3g4Nl9lbXVsYXRvci90ZXN0X3g4Nl9lbXVsYXRvci5jIGIvdG9vbHMv dGVzdHMveDg2X2VtdWxhdG9yL3Rlc3RfeDg2X2VtdWxhdG9yLmMKaW5kZXggYTc2NGQ5OS4uNmUy NDYzNyAxMDA2NDQKLS0tIGEvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL3Rlc3RfeDg2X2VtdWxh dG9yLmMKKysrIGIvdG9vbHMvdGVzdHMveDg2X2VtdWxhdG9yL3Rlc3RfeDg2X2VtdWxhdG9yLmMK QEAgLTE2LDYgKzE2LDUzIEBACiAjaW5jbHVkZSAieG9wLmgiCiAKICNkZWZpbmUgdmVyYm9zZSBm YWxzZSAvKiBTd2l0Y2ggdG8gdHJ1ZSBmb3IgZmFyIG1vcmUgbG9nZ2luZy4gKi8KKyNkZWZpbmUg Zm5fd2lkdGggKGludCkoc2l6ZW9mKCJjbXB4Y2hnIikgLSAxKQorCitzdGF0aWMgY29uc3QgY2hh ciAqc2VnX3RvX3N0cihlbnVtIHg4Nl9zZWdtZW50IHNlZykKK3sKKyAgICBzd2l0Y2ggKCBzZWcg KQorICAgIHsKKyNkZWZpbmUgQ0FTRSh4KSBjYXNlIHg4Nl9zZWdfICMjIHg6IHJldHVybiAjIHgK KyAgICAgICAgQ0FTRShlcyk7CisgICAgICAgIENBU0UoY3MpOworICAgICAgICBDQVNFKHNzKTsK KyAgICAgICAgQ0FTRShkcyk7CisgICAgICAgIENBU0UoZnMpOworICAgICAgICBDQVNFKGdzKTsK KyAgICAgICAgQ0FTRSh0cik7CisgICAgICAgIENBU0UobGR0cik7CisgICAgICAgIENBU0UoZ2R0 cik7CisgICAgICAgIENBU0UoaWR0cik7CisgICAgICAgIENBU0Uobm9uZSk7CisjdW5kZWYgQ0FT RQorICAgIGRlZmF1bHQ6IHJldHVybiAiPz8iOworICAgIH0KK30KKworc3RhdGljIGNvbnN0IGNo YXIgKng4NmVtdWxfdG9fc3RyKGludCByYykKK3sKKyAgICBzd2l0Y2ggKCByYyApCisgICAgewor I2RlZmluZSBDQVNFKHgpIGNhc2UgWDg2RU1VTF8gIyMgeDogcmV0dXJuICMgeAorICAgICAgICBD QVNFKE9LQVkpOworICAgICAgICBDQVNFKFVOSEFORExFQUJMRSk7CisgICAgICAgIENBU0UoRVhD RVBUSU9OKTsKKyAgICAgICAgQ0FTRShSRVRSWSk7CisgICAgICAgIENBU0UoRE9ORSk7CisgICAg ICAgIENBU0UoVU5JTVBMRU1FTlRFRCk7CisjdW5kZWYgQ0FTRQorICAgIGRlZmF1bHQ6IHJldHVy biAiPz8iOworICAgIH0KK30KKworc3RhdGljIHZvaWQgaGV4ZHVtcF9uZXdsaW5lKGNvbnN0IHZv aWQgKnB0ciwgc2l6ZV90IHNpemUpCit7CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcCA9IHB0 cjsKKworICAgIGZvciAoIDsgc2l6ZTsgLS1zaXplLCArK3AgKQorICAgICAgICBwcmludGYoIiAl MDJ4IiwgKnApOworICAgIHByaW50ZigiXG4iKTsKK30KIAogc3RhdGljIHZvaWQgYmxvd2Zpc2hf c2V0X3JlZ3Moc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MpCiB7CkBAIC0yMzAsOSArMjc3LDYg QEAgc3RhdGljIGludCByZWFkKAogCiAgICAgZW11bF9zYXZlX2ZwdV9zdGF0ZSgpOwogCi0gICAg aWYgKCB2ZXJib3NlICkKLSAgICAgICAgcHJpbnRmKCIqKiAlcygldSwgJXAsLCAldSwpXG4iLCBf X2Z1bmNfXywgc2VnLCAodm9pZCAqKW9mZnNldCwgYnl0ZXMpOwotCiAgICAgc3dpdGNoICggc2Vn ICkKICAgICB7CiAgICAgICAgIHVpbnQ2NF90IHZhbHVlOwpAQCAtMjkyLDYgKzMzNiwxNyBAQCBz dGF0aWMgaW50IHJlYWQoCiAgICAgbWVtY3B5KHBfZGF0YSwgKHZvaWQgKilvZmZzZXQsIGJ5dGVz KTsKIAogIG91dDoKKyAgICBpZiAoIHZlcmJvc2UgKQorICAgIHsKKyAgICAgICAgcHJpbnRmKCIq KiAlKnMoJXMsICVwLCwgJXUsKSA9PiIsCisgICAgICAgICAgICAgICBmbl93aWR0aCwgX19mdW5j X18sIHNlZ190b19zdHIoc2VnKSwgKHZvaWQgKilvZmZzZXQsIGJ5dGVzKTsKKworICAgICAgICBp ZiAoIHJjICkKKyAgICAgICAgICAgIHByaW50ZigiIGZhaWwgJXNcbiIsIHg4NmVtdWxfdG9fc3Ry KHJjKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGhleGR1bXBfbmV3bGluZShwX2RhdGEs IGJ5dGVzKTsKKyAgICB9CisKICAgICBlbXVsX3Jlc3RvcmVfZnB1X3N0YXRlKCk7CiAKICAgICBy ZXR1cm4gcmM7CkBAIC0zMDYsMTEgKzM2MSwxNSBAQCBzdGF0aWMgaW50IGZldGNoKAogewogICAg IGVtdWxfc2F2ZV9mcHVfc3RhdGUoKTsKIAotICAgIGlmICggdmVyYm9zZSApCi0gICAgICAgIHBy aW50ZigiKiogJXMoJXUsICVwLCwgJXUsKVxuIiwgX19mdW5jX18sIHNlZywgKHZvaWQgKilvZmZz ZXQsIGJ5dGVzKTsKLQogICAgIG1lbWNweShwX2RhdGEsICh2b2lkICopb2Zmc2V0LCBieXRlcyk7 CiAKKyAgICBpZiAoIHZlcmJvc2UgKQorICAgIHsKKyAgICAgICAgcHJpbnRmKCIqKiAlKnMoJXMs ICVwLCwgJXUsKSA9PiIsCisgICAgICAgICAgICAgICBmbl93aWR0aCwgX19mdW5jX18sIHNlZ190 b19zdHIoc2VnKSwgKHZvaWQgKilvZmZzZXQsIGJ5dGVzKTsKKyAgICAgICAgaGV4ZHVtcF9uZXds aW5lKHBfZGF0YSwgYnl0ZXMpOworICAgIH0KKwogICAgIGVtdWxfcmVzdG9yZV9mcHVfc3RhdGUo KTsKIAogICAgIHJldHVybiBYODZFTVVMX09LQVk7CkBAIC0zMjcsOSArMzg2LDYgQEAgc3RhdGlj IGludCB3cml0ZSgKIAogICAgIGVtdWxfc2F2ZV9mcHVfc3RhdGUoKTsKIAotICAgIGlmICggdmVy Ym9zZSApCi0gICAgICAgIHByaW50ZigiKiogJXMoJXUsICVwLCwgJXUsKVxuIiwgX19mdW5jX18s IHNlZywgKHZvaWQgKilvZmZzZXQsIGJ5dGVzKTsKLQogICAgIGlmICggIWlzX3g4Nl91c2VyX3Nl Z21lbnQoc2VnKSApCiAgICAgewogICAgICAgICByYyA9IFg4NkVNVUxfVU5IQU5ETEVBQkxFOwpA QCAtMzM5LDYgKzM5NSwxNyBAQCBzdGF0aWMgaW50IHdyaXRlKAogICAgIG1lbWNweSgodm9pZCAq KW9mZnNldCwgcF9kYXRhLCBieXRlcyk7CiAKICBvdXQ6CisgICAgaWYgKCB2ZXJib3NlICkKKyAg ICB7CisgICAgICAgIHByaW50ZigiKiogJSpzKCVzLCAlcCwsICV1LCkgPT4iLAorICAgICAgICAg ICAgICAgZm5fd2lkdGgsIF9fZnVuY19fLCBzZWdfdG9fc3RyKHNlZyksICh2b2lkICopb2Zmc2V0 LCBieXRlcyk7CisKKyAgICAgICAgaWYgKCByYyApCisgICAgICAgICAgICBwcmludGYoIiBmYWls ICVzXG4iLCB4ODZlbXVsX3RvX3N0cihyYykpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBo ZXhkdW1wX25ld2xpbmUocF9kYXRhLCBieXRlcyk7CisgICAgfQorCiAgICAgZW11bF9yZXN0b3Jl X2ZwdV9zdGF0ZSgpOwogCiAgICAgcmV0dXJuIHJjOwpAQCAtMzU2LDkgKzQyMyw2IEBAIHN0YXRp YyBpbnQgY21weGNoZygKIAogICAgIGVtdWxfc2F2ZV9mcHVfc3RhdGUoKTsKIAotICAgIGlmICgg dmVyYm9zZSApCi0gICAgICAgIHByaW50ZigiKiogJXMoJXUsICVwLCwgJXUsKVxuIiwgX19mdW5j X18sIHNlZywgKHZvaWQgKilvZmZzZXQsIGJ5dGVzKTsKLQogICAgIGlmICggIWlzX3g4Nl91c2Vy X3NlZ21lbnQoc2VnKSApCiAgICAgewogICAgICAgICByYyA9IFg4NkVNVUxfVU5IQU5ETEVBQkxF OwpAQCAtMzY4LDYgKzQzMiwxNyBAQCBzdGF0aWMgaW50IGNtcHhjaGcoCiAgICAgbWVtY3B5KCh2 b2lkICopb2Zmc2V0LCBuZXcsIGJ5dGVzKTsKIAogIG91dDoKKyAgICBpZiAoIHZlcmJvc2UgKQor ICAgIHsKKyAgICAgICAgcHJpbnRmKCIqKiAlKnMoJXMsICVwLCwgJXUsKSA9PiIsCisgICAgICAg ICAgICAgICBmbl93aWR0aCwgX19mdW5jX18sIHNlZ190b19zdHIoc2VnKSwgKHZvaWQgKilvZmZz ZXQsIGJ5dGVzKTsKKworICAgICAgICBpZiAoIHJjICkKKyAgICAgICAgICAgIHByaW50ZigiIGZh aWwgJXNcbiIsIHg4NmVtdWxfdG9fc3RyKHJjKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg IGhleGR1bXBfbmV3bGluZShuZXcsIGJ5dGVzKTsKKyAgICB9CisKICAgICBlbXVsX3Jlc3RvcmVf ZnB1X3N0YXRlKCk7CiAKICAgICByZXR1cm4gcmM7Ci0tIAoyLjEuNAoKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QK WGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5v cmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=