From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH v1 4/9] mm: Scrub memory from idle loop Date: Fri, 24 Mar 2017 13:04:59 -0400 Message-ID: <1490375104-15450-5-git-send-email-boris.ostrovsky@oracle.com> References: <1490375104-15450-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: <1490375104-15450-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 bT4KLS0tCiB4ZW4vYXJjaC9hcm0vZG9tYWluLmMgICB8ICAgMTMgKysrKysrKystLS0tLQogeGVu L2FyY2gveDg2L2RvbWFpbi5jICAgfCAgICAzICsrLQogeGVuL2NvbW1vbi9wYWdlX2FsbG9jLmMg fCAgIDQxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiB4ZW4vaW5j bHVkZS94ZW4vbW0uaCAgICB8ICAgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25z KCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vZG9tYWluLmMg Yi94ZW4vYXJjaC9hcm0vZG9tYWluLmMKaW5kZXggYmIzMjdkYS4uZmRmMDZlMSAxMDA2NDQKLS0t IGEveGVuL2FyY2gvYXJtL2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL2FybS9kb21haW4uYwpAQCAt NDUsMTMgKzQ1LDE2IEBAIHZvaWQgaWRsZV9sb29wKHZvaWQpCiAgICAgICAgIGlmICggY3B1X2lz X29mZmxpbmUoc21wX3Byb2Nlc3Nvcl9pZCgpKSApCiAgICAgICAgICAgICBzdG9wX2NwdSgpOwog Ci0gICAgICAgIGxvY2FsX2lycV9kaXNhYmxlKCk7Ci0gICAgICAgIGlmICggY3B1X2lzX2hhbHRh YmxlKHNtcF9wcm9jZXNzb3JfaWQoKSkgKQorICAgICAgICBpZiAoICFzY3J1Yl9mcmVlX3BhZ2Vz KCkgKQogICAgICAgICB7Ci0gICAgICAgICAgICBkc2Ioc3kpOwotICAgICAgICAgICAgd2ZpKCk7 CisgICAgICAgICAgICBsb2NhbF9pcnFfZGlzYWJsZSgpOworICAgICAgICAgICAgaWYgKCBjcHVf aXNfaGFsdGFibGUoc21wX3Byb2Nlc3Nvcl9pZCgpKSApCisgICAgICAgICAgICB7CisgICAgICAg ICAgICAgICAgZHNiKHN5KTsKKyAgICAgICAgICAgICAgICB3ZmkoKTsKKyAgICAgICAgICAgIH0K KyAgICAgICAgICAgIGxvY2FsX2lycV9lbmFibGUoKTsKICAgICAgICAgfQotICAgICAgICBsb2Nh bF9pcnFfZW5hYmxlKCk7CiAKICAgICAgICAgZG9fdGFza2xldCgpOwogICAgICAgICBkb19zb2Z0 aXJxKCk7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvZG9tYWluLmMgYi94ZW4vYXJjaC94ODYv ZG9tYWluLmMKaW5kZXggOTBlMmIxZi4uYTVmNjJiNSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2 L2RvbWFpbi5jCisrKyBiL3hlbi9hcmNoL3g4Ni9kb21haW4uYwpAQCAtMTE4LDcgKzExOCw4IEBA IHN0YXRpYyB2b2lkIGlkbGVfbG9vcCh2b2lkKQogICAgIHsKICAgICAgICAgaWYgKCBjcHVfaXNf b2ZmbGluZShzbXBfcHJvY2Vzc29yX2lkKCkpICkKICAgICAgICAgICAgIHBsYXlfZGVhZCgpOwot ICAgICAgICAoKnBtX2lkbGUpKCk7CisgICAgICAgIGlmICggIXNjcnViX2ZyZWVfcGFnZXMoKSAp CisgICAgICAgICAgICAoKnBtX2lkbGUpKCk7CiAgICAgICAgIGRvX3Rhc2tsZXQoKTsKICAgICAg ICAgZG9fc29mdGlycSgpOwogICAgICAgICAvKgpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9wYWdl X2FsbG9jLmMgYi94ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYwppbmRleCA2MWY4NzNhLi5lNDM4NTQ3 IDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYworKysgYi94ZW4vY29tbW9uL3Bh Z2VfYWxsb2MuYwpAQCAtMTA0NCwxNiArMTA0NCwzNSBAQCBzdGF0aWMgdm9pZCBtZXJnZV9jaHVu a3Moc3RydWN0IHBhZ2VfaW5mbyAqcGcsIHVuc2lnbmVkIGludCBub2RlLAogICAgICAgICBwYWdl X2xpc3RfYWRkKHBnLCAmaGVhcChub2RlLCB6b25lLCBvcmRlcikpOwogfQogCi1zdGF0aWMgdm9p ZCBzY3J1Yl9mcmVlX3BhZ2VzKHVuc2lnbmVkIGludCBub2RlKQorYm9vbF90IHNjcnViX2ZyZWVf cGFnZXMoKQogewogICAgIHN0cnVjdCBwYWdlX2luZm8gKnBnOwogICAgIHVuc2lnbmVkIGludCBp LCB6b25lOwotICAgIGludCBvcmRlcjsKKyAgICBpbnQgb3JkZXIsIGNwdSA9IHNtcF9wcm9jZXNz b3JfaWQoKTsKKyAgICBub2RlaWRfdCBub2RlID0gY3B1X3RvX25vZGUoY3B1KSwgbG9jYWxfbm9k ZTsKKyAgICBzdGF0aWMgbm9kZW1hc2tfdCBub2RlX3NjcnViYmluZzsKIAotICAgIEFTU0VSVChz cGluX2lzX2xvY2tlZCgmaGVhcF9sb2NrKSk7CisgICAgaWYgKCBub2RlID09IE5VTUFfTk9fTk9E RSApCisgICAgICAgIG5vZGUgPSAwOworICAgIGxvY2FsX25vZGUgPSBub2RlOwogCi0gICAgaWYg KCAhbm9kZV9uZWVkX3NjcnViW25vZGVdICkKLSAgICAgICAgcmV0dXJuOworICAgIHdoaWxlICgg MSApCisgICAgeworICAgICAgICBpZiAoIG5vZGVfbmVlZF9zY3J1Yltub2RlXSAmJiAhbm9kZV90 ZXN0X2FuZF9zZXQobm9kZSwgbm9kZV9zY3J1YmJpbmcpICkKKyAgICAgICAgICAgIGJyZWFrOwor CisgICAgICAgIC8qCisgICAgICAgICAqIElmIGxvY2FsIG5vZGUgaXMgYWxyZWFkeSBiZWluZyBz Y3J1YmJlZCB0aGVuIHNlZSBpZiB0aGVyZSBpcyBhCisgICAgICAgICAqIG1lbW9yeS1vbmx5IG5v ZGUgdGhhdCBuZWVkcyBzY3J1YmJpbmcuCisgICAgICAgICAqLworICAgICAgICBkbyB7CisgICAg ICAgICAgICBub2RlID0gY3ljbGVfbm9kZShub2RlLCBub2RlX29ubGluZV9tYXApOworICAgICAg ICAgICAgaWYgKCBub2RlID09IGxvY2FsX25vZGUgKQorICAgICAgICAgICAgICAgIHJldHVybiAw OworICAgICAgICB9IHdoaWxlICggIWNwdW1hc2tfZW1wdHkoJm5vZGVfdG9fY3B1bWFzayhub2Rl KSkgKTsKKyAgICB9CisKKyAgICBzcGluX2xvY2soJmhlYXBfbG9jayk7CiAKICAgICBmb3IgKCB6 b25lID0gMDsgem9uZSA8IE5SX1pPTkVTOyB6b25lKysgKQogICAgIHsKQEAgLTEwNjcsNyArMTA4 NiwxMSBAQCBzdGF0aWMgdm9pZCBzY3J1Yl9mcmVlX3BhZ2VzKHVuc2lnbmVkIGludCBub2RlKQog ICAgICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgICAgIGZvciAoIGkgPSAw OyBpIDwgKDFVTCA8PCBvcmRlcik7IGkrKykKKyAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg ICAgICAgICAgIHNjcnViX29uZV9wYWdlKCZwZ1tpXSk7CisgICAgICAgICAgICAgICAgICAgIGlm ICggc29mdGlycV9wZW5kaW5nKGNwdSkgKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBv dXQ7CisgICAgICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAgICAgcGctPmNvdW50X2luZm8g Jj0gflBHQ19uZWVkX3NjcnViOwogCkBAIC0xMDc4LDYgKzExMDEsMTEgQEAgc3RhdGljIHZvaWQg c2NydWJfZnJlZV9wYWdlcyh1bnNpZ25lZCBpbnQgbm9kZSkKICAgICAgICAgICAgIH0KICAgICAg ICAgfQogICAgIH0KKworIG91dDoKKyAgICBzcGluX3VubG9jaygmaGVhcF9sb2NrKTsKKyAgICBu b2RlX2NsZWFyKG5vZGUsIG5vZGVfc2NydWJiaW5nKTsKKyAgICByZXR1cm4gKG5vZGVfbmVlZF9z Y3J1Yltub2RlXSAhPSAwKTsKIH0KIAogLyogRnJlZSAyXkBvcmRlciBzZXQgb2YgcGFnZXMuICov CkBAIC0xMTQyLDkgKzExNzAsNiBAQCBzdGF0aWMgdm9pZCBmcmVlX2hlYXBfcGFnZXMoCiAgICAg aWYgKCB0YWludGVkICkKICAgICAgICAgcmVzZXJ2ZV9vZmZsaW5lZF9wYWdlKHBnKTsKIAotICAg IGlmICggbmVlZF9zY3J1YiApCi0gICAgICAgIHNjcnViX2ZyZWVfcGFnZXMobm9kZSk7Ci0KICAg ICBzcGluX3VubG9jaygmaGVhcF9sb2NrKTsKIH0KIApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUv eGVuL21tLmggYi94ZW4vaW5jbHVkZS94ZW4vbW0uaAppbmRleCA4OGRlM2MxLi4zZDkzZmNjIDEw MDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vbW0uaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vbW0u aApAQCAtMTM4LDYgKzEzOCw3IEBAIHZvaWQgaW5pdF94ZW5oZWFwX3BhZ2VzKHBhZGRyX3QgcHMs IHBhZGRyX3QgcGUpOwogdm9pZCB4ZW5oZWFwX21heF9tZm4odW5zaWduZWQgbG9uZyBtZm4pOwog dm9pZCAqYWxsb2NfeGVuaGVhcF9wYWdlcyh1bnNpZ25lZCBpbnQgb3JkZXIsIHVuc2lnbmVkIGlu dCBtZW1mbGFncyk7CiB2b2lkIGZyZWVfeGVuaGVhcF9wYWdlcyh2b2lkICp2LCB1bnNpZ25lZCBp bnQgb3JkZXIpOworYm9vbF90IHNjcnViX2ZyZWVfcGFnZXModm9pZCk7CiAjZGVmaW5lIGFsbG9j X3hlbmhlYXBfcGFnZSgpIChhbGxvY194ZW5oZWFwX3BhZ2VzKDAsMCkpCiAjZGVmaW5lIGZyZWVf eGVuaGVhcF9wYWdlKHYpIChmcmVlX3hlbmhlYXBfcGFnZXModiwwKSkKIC8qIE1hcCBtYWNoaW5l IHBhZ2UgcmFuZ2UgaW4gWGVuIHZpcnR1YWwgYWRkcmVzcyBzcGFjZS4gKi8KLS0gCjEuNy4xCgoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg==