From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH v2 4/9] mm: Scrub memory from idle loop Date: Mon, 3 Apr 2017 12:50:51 -0400 Message-ID: <1491238256-5517-5-git-send-email-boris.ostrovsky@oracle.com> References: <1491238256-5517-1-git-send-email-boris.ostrovsky@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1491238256-5517-1-git-send-email-boris.ostrovsky@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: sstabellini@kernel.org, wei.liu2@citrix.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, tim@xen.org, jbeulich@suse.com, Boris Ostrovsky List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogQm9yaXMgT3N0cm92c2t5IDxib3Jpcy5vc3Ryb3Zza3lAb3JhY2xlLmNv bT4KLS0tCkNoYW5nZXMgaW4gdjI6CiogQWRkZWQgbm9kZV90b19zY3J1YigpCiogSW5jbHVkZSBz b2Z0aXJxX3BlbmRpbmcoKSBpbiBzY3J1Yl9mcmVlX3BhZ2VzKCkncyByZXR1cm4gdmFsdWUKCgog eGVuL2FyY2gvYXJtL2RvbWFpbi5jICAgfCAgIDEzICsrKysrKystLS0tCiB4ZW4vYXJjaC94ODYv ZG9tYWluLmMgICB8ICAgIDMgKy0KIHhlbi9jb21tb24vcGFnZV9hbGxvYy5jIHwgICA1MiArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiB4ZW4vaW5jbHVkZS94 ZW4vbW0uaCAgICB8ICAgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCAx NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vZG9tYWluLmMgYi94ZW4v YXJjaC9hcm0vZG9tYWluLmMKaW5kZXggYmIzMjdkYS4uZmRmMDZlMSAxMDA2NDQKLS0tIGEveGVu L2FyY2gvYXJtL2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL2FybS9kb21haW4uYwpAQCAtNDUsMTMg KzQ1LDE2IEBAIHZvaWQgaWRsZV9sb29wKHZvaWQpCiAgICAgICAgIGlmICggY3B1X2lzX29mZmxp bmUoc21wX3Byb2Nlc3Nvcl9pZCgpKSApCiAgICAgICAgICAgICBzdG9wX2NwdSgpOwogCi0gICAg ICAgIGxvY2FsX2lycV9kaXNhYmxlKCk7Ci0gICAgICAgIGlmICggY3B1X2lzX2hhbHRhYmxlKHNt cF9wcm9jZXNzb3JfaWQoKSkgKQorICAgICAgICBpZiAoICFzY3J1Yl9mcmVlX3BhZ2VzKCkgKQog ICAgICAgICB7Ci0gICAgICAgICAgICBkc2Ioc3kpOwotICAgICAgICAgICAgd2ZpKCk7CisgICAg ICAgICAgICBsb2NhbF9pcnFfZGlzYWJsZSgpOworICAgICAgICAgICAgaWYgKCBjcHVfaXNfaGFs dGFibGUoc21wX3Byb2Nlc3Nvcl9pZCgpKSApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAg ICAgZHNiKHN5KTsKKyAgICAgICAgICAgICAgICB3ZmkoKTsKKyAgICAgICAgICAgIH0KKyAgICAg ICAgICAgIGxvY2FsX2lycV9lbmFibGUoKTsKICAgICAgICAgfQotICAgICAgICBsb2NhbF9pcnFf ZW5hYmxlKCk7CiAKICAgICAgICAgZG9fdGFza2xldCgpOwogICAgICAgICBkb19zb2Z0aXJxKCk7 CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvZG9tYWluLmMgYi94ZW4vYXJjaC94ODYvZG9tYWlu LmMKaW5kZXggOTBlMmIxZi4uYTVmNjJiNSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2RvbWFp bi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9kb21haW4uYwpAQCAtMTE4LDcgKzExOCw4IEBAIHN0YXRp YyB2b2lkIGlkbGVfbG9vcCh2b2lkKQogICAgIHsKICAgICAgICAgaWYgKCBjcHVfaXNfb2ZmbGlu ZShzbXBfcHJvY2Vzc29yX2lkKCkpICkKICAgICAgICAgICAgIHBsYXlfZGVhZCgpOwotICAgICAg ICAoKnBtX2lkbGUpKCk7CisgICAgICAgIGlmICggIXNjcnViX2ZyZWVfcGFnZXMoKSApCisgICAg ICAgICAgICAoKnBtX2lkbGUpKCk7CiAgICAgICAgIGRvX3Rhc2tsZXQoKTsKICAgICAgICAgZG9f c29mdGlycSgpOwogICAgICAgICAvKgpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9wYWdlX2FsbG9j LmMgYi94ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYwppbmRleCBhNTYwZDNlLi41Y2M0ODlhIDEwMDY0 NAotLS0gYS94ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYworKysgYi94ZW4vY29tbW9uL3BhZ2VfYWxs b2MuYwpAQCAtMTA0MywxNiArMTA0Myw0NCBAQCBzdGF0aWMgc3RydWN0IHBhZ2VfaW5mbyAqbWVy Z2VfY2h1bmtzKHN0cnVjdCBwYWdlX2luZm8gKnBnLCB1bnNpZ25lZCBpbnQgbm9kZSwKICAgICBy ZXR1cm4gcGc7CiB9CiAKLXN0YXRpYyB2b2lkIHNjcnViX2ZyZWVfcGFnZXModW5zaWduZWQgaW50 IG5vZGUpCitzdGF0aWMgbm9kZW1hc2tfdCBub2RlX3NjcnViYmluZzsKK3N0YXRpYyB1bnNpZ25l ZCBpbnQgbm9kZV90b19zY3J1Yihib29sX3QgZ2V0X25vZGUpCit7CisgICAgbm9kZWlkX3Qgbm9k ZSA9IGNwdV90b19ub2RlKHNtcF9wcm9jZXNzb3JfaWQoKSksIGxvY2FsX25vZGU7CisKKyAgICBp ZiAoIG5vZGUgPT0gTlVNQV9OT19OT0RFICkKKyAgICAgICAgbm9kZSA9IDA7CisgICAgbG9jYWxf bm9kZSA9IG5vZGU7CisKKyAgICAvKgorICAgICAqIENoZWNrIGxvY2FsIG5vZGUgZmlzdCBhbmQg dGhlbiB0aGVuIHNlZSBpZiB0aGVyZSBhcmUgYW55IG1lbW9yeS1vbmx5CisgICAgICogbm9kZXMg dGhhdCBtYXkgbmVlZCBzY3J1YmJpbmcKKyAgICAgKi8KKyAgICB3aGlsZSAoIDEgKQorICAgIHsK KyAgICAgICAgaWYgKCBub2RlX25lZWRfc2NydWJbbm9kZV0gJiYKKyAgICAgICAgICAgICAoIW5v ZGVfdGVzdF9hbmRfc2V0KG5vZGUsIG5vZGVfc2NydWJiaW5nKSB8fCAhZ2V0X25vZGUpICkKKyAg ICAgICAgICAgICAgICByZXR1cm4gbm9kZTsKKyAgICAgICAgZG8geworICAgICAgICAgICAgbm9k ZSA9IGN5Y2xlX25vZGUobm9kZSwgbm9kZV9vbmxpbmVfbWFwKTsKKyAgICAgICAgICAgIGlmICgg bm9kZSA9PSBsb2NhbF9ub2RlICkKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVNQV9OT19OT0RF OworICAgICAgICB9IHdoaWxlICggIWNwdW1hc2tfZW1wdHkoJm5vZGVfdG9fY3B1bWFzayhub2Rl KSkgKTsKKyAgICB9Cit9CisKK2Jvb2xfdCBzY3J1Yl9mcmVlX3BhZ2VzKCkKIHsKICAgICBzdHJ1 Y3QgcGFnZV9pbmZvICpwZzsKICAgICB1bnNpZ25lZCBpbnQgaSwgem9uZTsKLSAgICBpbnQgb3Jk ZXI7CisgICAgaW50IG9yZGVyLCBjcHUgPSBzbXBfcHJvY2Vzc29yX2lkKCk7CisgICAgbm9kZWlk X3Qgbm9kZTsKIAotICAgIEFTU0VSVChzcGluX2lzX2xvY2tlZCgmaGVhcF9sb2NrKSk7CisgICAg bm9kZSA9IG5vZGVfdG9fc2NydWIodHJ1ZSk7CisgICAgaWYgKCBub2RlID09IE5VTUFfTk9fTk9E RSApCisgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmICggIW5vZGVfbmVlZF9zY3J1Yltu b2RlXSApCi0gICAgICAgIHJldHVybjsKKyAgICBzcGluX2xvY2soJmhlYXBfbG9jayk7CiAKICAg ICBmb3IgKCB6b25lID0gMDsgem9uZSA8IE5SX1pPTkVTOyB6b25lKysgKQogICAgIHsKQEAgLTEw NjYsNyArMTA5NCwxMSBAQCBzdGF0aWMgdm9pZCBzY3J1Yl9mcmVlX3BhZ2VzKHVuc2lnbmVkIGlu dCBub2RlKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgICAgIGZv ciAoIGkgPSAwOyBpIDwgKDFVTCA8PCBvcmRlcik7IGkrKykKKyAgICAgICAgICAgICAgICB7CiAg ICAgICAgICAgICAgICAgICAgIHNjcnViX29uZV9wYWdlKCZwZ1tpXSk7CisgICAgICAgICAgICAg ICAgICAgIGlmICggc29mdGlycV9wZW5kaW5nKGNwdSkgKQorICAgICAgICAgICAgICAgICAgICAg ICAgZ290byBvdXQ7CisgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAgICAgcGctPmNv dW50X2luZm8gJj0gflBHQ19uZWVkX3NjcnViOwogCkBAIC0xMDc3LDcgKzExMDksMTIgQEAgc3Rh dGljIHZvaWQgc2NydWJfZnJlZV9wYWdlcyh1bnNpZ25lZCBpbnQgbm9kZSkKICAgICAgICAgICAg IH0KICAgICAgICAgfQogICAgIH0KLSB9CisKKyBvdXQ6CisgICAgc3Bpbl91bmxvY2soJmhlYXBf bG9jayk7CisgICAgbm9kZV9jbGVhcihub2RlLCBub2RlX3NjcnViYmluZyk7CisgICAgcmV0dXJu IHNvZnRpcnFfcGVuZGluZyhjcHUpIHx8IChub2RlX3RvX3NjcnViKGZhbHNlKSAhPSBOVU1BX05P X05PREUpOworfQogCiAKIC8qIEZyZWUgMl5Ab3JkZXIgc2V0IG9mIHBhZ2VzLiAqLwpAQCAtMTE0 Miw5ICsxMTc5LDYgQEAgc3RhdGljIHZvaWQgZnJlZV9oZWFwX3BhZ2VzKAogICAgIGlmICggdGFp bnRlZCApCiAgICAgICAgIHJlc2VydmVfb2ZmbGluZWRfcGFnZShwZyk7CiAKLSAgICBpZiAoIG5l ZWRfc2NydWIgKQotICAgICAgICBzY3J1Yl9mcmVlX3BhZ2VzKG5vZGUpOwotCiAgICAgc3Bpbl91 bmxvY2soJmhlYXBfbG9jayk7CiB9CiAKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9tbS5o IGIveGVuL2luY2x1ZGUveGVuL21tLmgKaW5kZXggODhkZTNjMS4uM2Q5M2ZjYyAxMDA2NDQKLS0t IGEveGVuL2luY2x1ZGUveGVuL21tLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL21tLmgKQEAgLTEz OCw2ICsxMzgsNyBAQCB2b2lkIGluaXRfeGVuaGVhcF9wYWdlcyhwYWRkcl90IHBzLCBwYWRkcl90 IHBlKTsKIHZvaWQgeGVuaGVhcF9tYXhfbWZuKHVuc2lnbmVkIGxvbmcgbWZuKTsKIHZvaWQgKmFs bG9jX3hlbmhlYXBfcGFnZXModW5zaWduZWQgaW50IG9yZGVyLCB1bnNpZ25lZCBpbnQgbWVtZmxh Z3MpOwogdm9pZCBmcmVlX3hlbmhlYXBfcGFnZXModm9pZCAqdiwgdW5zaWduZWQgaW50IG9yZGVy KTsKK2Jvb2xfdCBzY3J1Yl9mcmVlX3BhZ2VzKHZvaWQpOwogI2RlZmluZSBhbGxvY194ZW5oZWFw X3BhZ2UoKSAoYWxsb2NfeGVuaGVhcF9wYWdlcygwLDApKQogI2RlZmluZSBmcmVlX3hlbmhlYXBf cGFnZSh2KSAoZnJlZV94ZW5oZWFwX3BhZ2VzKHYsMCkpCiAvKiBNYXAgbWFjaGluZSBwYWdlIHJh bmdlIGluIFhlbiB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UuICovCi0tIAoxLjcuMQoKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5n IGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1k ZXZlbAo=