From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH] x86/paging: Package up the log dirty function pointers Date: Thu, 16 Feb 2017 17:13:04 +0000 Message-ID: <1487265184-21504-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: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: George Dunlap , Andrew Cooper , Tim Deegan , Jan Beulich List-Id: xen-devel@lists.xenproject.org VGhleSBkZXBlbmQgc29sZXkgb24gcGFnaW5nIG1vZGUsIHNvIGRvbid0IG5lZWQgdG8gYmUgcmVw ZWF0ZWQgcGVyIGRvbWFpbiwgYW5kCmNhbiBsaXZlIGluIC5yb2RhdGEuICBXaGlsZSBtYWtpbmcg dGhpcyBjaGFuZ2UsIGRyb3AgdGhlIHJlZHVuZGFudCBsb2dfZGlydHkKZnJvbSB0aGUgZnVuY3Rp b24gcG9pbnRlciBuYW1lcy4KClNpZ25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j b29wZXIzQGNpdHJpeC5jb20+Ci0tLQpDQzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29t PgpDQzogVGltIERlZWdhbiA8dGltQHhlbi5vcmc+CkNDOiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2Uu ZHVubGFwQGV1LmNpdHJpeC5jb20+Ci0tLQogeGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYyAgICAg ICB8IDEwICsrKysrKystLS0KIHhlbi9hcmNoL3g4Ni9tbS9wYWdpbmcuYyAgICAgICAgfCAyMyAr KysrKysrKy0tLS0tLS0tLS0tLS0tLQogeGVuL2FyY2gveDg2L21tL3NoYWRvdy9jb21tb24uYyB8 ICA5ICsrKysrKystLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaCAgICB8ICA4ICsrKysr LS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5oICAgIHwgIDYgKy0tLS0tCiA1IGZpbGVz IGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMgYi94ZW4vYXJjaC94ODYvbW0vaGFwL2hhcC5jCmlu ZGV4IGI1ODcwYmYuLmU3YmFkNjkgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFw LmMKKysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYwpAQCAtNDQ0LDE0ICs0NDQsMTggQEAg c3RhdGljIHZvaWQgaGFwX2Rlc3Ryb3lfbW9uaXRvcl90YWJsZShzdHJ1Y3QgdmNwdSogdiwgbWZu X3QgbW1mbikKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KiovCiB2b2lkIGhhcF9kb21haW5faW5pdChzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIHN0YXRp YyBjb25zdCBzdHJ1Y3QgbG9nX2RpcnR5X29wcyBoYXBfb3BzID0geworICAgICAgICAuZW5hYmxl ICA9IGhhcF9lbmFibGVfbG9nX2RpcnR5LAorICAgICAgICAuZGlzYWJsZSA9IGhhcF9kaXNhYmxl X2xvZ19kaXJ0eSwKKyAgICAgICAgLmNsZWFuICAgPSBoYXBfY2xlYW5fZGlydHlfYml0bWFwLAor ICAgIH07CisKICAgICBJTklUX1BBR0VfTElTVF9IRUFEKCZkLT5hcmNoLnBhZ2luZy5oYXAuZnJl ZWxpc3QpOwogCiAgICAgZC0+YXJjaC5wYWdpbmcuZ2ZuX2JpdHMgPSBoYXBfcGFkZHJfYml0cyAt IFBBR0VfU0hJRlQ7CiAKICAgICAvKiBVc2UgSEFQIGxvZ2RpcnR5IG1lY2hhbmlzbS4gKi8KLSAg ICBwYWdpbmdfbG9nX2RpcnR5X2luaXQoZCwgaGFwX2VuYWJsZV9sb2dfZGlydHksCi0gICAgICAg ICAgICAgICAgICAgICAgICAgIGhhcF9kaXNhYmxlX2xvZ19kaXJ0eSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgaGFwX2NsZWFuX2RpcnR5X2JpdG1hcCk7CisgICAgcGFnaW5nX2xvZ19kaXJ0 eV9pbml0KGQsICZoYXBfb3BzKTsKIH0KIAogLyogcmV0dXJuIDAgZm9yIHN1Y2Nlc3MsIC1lcnJu byBmb3IgZmFpbHVyZSAqLwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL3BhZ2luZy5jIGIv eGVuL2FyY2gveDg2L21tL3BhZ2luZy5jCmluZGV4IGQ5NjRlZDUuLjU4ZDdmMTMgMTAwNjQ0Ci0t LSBhL3hlbi9hcmNoL3g4Ni9tbS9wYWdpbmcuYworKysgYi94ZW4vYXJjaC94ODYvbW0vcGFnaW5n LmMKQEAgLTIzNCw3ICsyMzQsNyBAQCBpbnQgcGFnaW5nX2xvZ19kaXJ0eV9lbmFibGUoc3RydWN0 IGRvbWFpbiAqZCwgYm9vbF90IGxvZ19nbG9iYWwpCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwog CiAgICAgZG9tYWluX3BhdXNlKGQpOwotICAgIHJldCA9IGQtPmFyY2gucGFnaW5nLmxvZ19kaXJ0 eS5lbmFibGVfbG9nX2RpcnR5KGQsIGxvZ19nbG9iYWwpOworICAgIHJldCA9IGQtPmFyY2gucGFn aW5nLmxvZ19kaXJ0eS5vcHMtPmVuYWJsZShkLCBsb2dfZ2xvYmFsKTsKICAgICBkb21haW5fdW5w YXVzZShkKTsKIAogICAgIHJldHVybiByZXQ7CkBAIC0yNTAsNyArMjUwLDcgQEAgc3RhdGljIGlu dCBwYWdpbmdfbG9nX2RpcnR5X2Rpc2FibGUoc3RydWN0IGRvbWFpbiAqZCwgYm9vbF90IHJlc3Vt aW5nKQogICAgICAgICAvKiBTYWZlIGJlY2F1c2UgdGhlIGRvbWFpbiBpcyBwYXVzZWQuICovCiAg ICAgICAgIGlmICggcGFnaW5nX21vZGVfbG9nX2RpcnR5KGQpICkKICAgICAgICAgewotICAgICAg ICAgICAgcmV0ID0gZC0+YXJjaC5wYWdpbmcubG9nX2RpcnR5LmRpc2FibGVfbG9nX2RpcnR5KGQp OworICAgICAgICAgICAgcmV0ID0gZC0+YXJjaC5wYWdpbmcubG9nX2RpcnR5Lm9wcy0+ZGlzYWJs ZShkKTsKICAgICAgICAgICAgIEFTU0VSVChyZXQgPD0gMCk7CiAgICAgICAgIH0KICAgICB9CkBA IC01NzIsNyArNTcyLDcgQEAgc3RhdGljIGludCBwYWdpbmdfbG9nX2RpcnR5X29wKHN0cnVjdCBk b21haW4gKmQsCiAgICAgewogICAgICAgICAvKiBXZSBuZWVkIHRvIGZ1cnRoZXIgY2FsbCBjbGVh bl9kaXJ0eV9iaXRtYXAoKSBmdW5jdGlvbnMgb2Ygc3BlY2lmaWMKICAgICAgICAgICogcGFnaW5n IG1vZGVzIChzaGFkb3cgb3IgaGFwKS4gIFNhZmUgYmVjYXVzZSB0aGUgZG9tYWluIGlzIHBhdXNl ZC4gKi8KLSAgICAgICAgZC0+YXJjaC5wYWdpbmcubG9nX2RpcnR5LmNsZWFuX2RpcnR5X2JpdG1h cChkKTsKKyAgICAgICAgZC0+YXJjaC5wYWdpbmcubG9nX2RpcnR5Lm9wcy0+Y2xlYW4oZCk7CiAg ICAgfQogICAgIGRvbWFpbl91bnBhdXNlKGQpOwogICAgIHJldHVybiBydjsKQEAgLTYyNCwyMiAr NjI0LDE1IEBAIHZvaWQgcGFnaW5nX2xvZ19kaXJ0eV9yYW5nZShzdHJ1Y3QgZG9tYWluICpkLAog ICAgIGZsdXNoX3RsYl9tYXNrKGQtPmRvbWFpbl9kaXJ0eV9jcHVtYXNrKTsKIH0KIAotLyogTm90 ZSB0aGF0IHRoaXMgZnVuY3Rpb24gdGFrZXMgdGhyZWUgZnVuY3Rpb24gcG9pbnRlcnMuIENhbGxl cnMgbXVzdCBzdXBwbHkKLSAqIHRoZXNlIGZ1bmN0aW9ucyBmb3IgbG9nIGRpcnR5IGNvZGUgdG8g Y2FsbC4gVGhpcyBmdW5jdGlvbiB1c3VhbGx5IGlzCi0gKiBpbnZva2VkIHdoZW4gcGFnaW5nIGlz IGVuYWJsZWQuIENoZWNrIHNoYWRvd19lbmFibGUoKSBhbmQgaGFwX2VuYWJsZSgpIGZvcgotICog cmVmZXJlbmNlLgorLyogQ2FsbGVycyBtdXN0IHN1cHBseSBsb2dfZGlydHlfb3BzIGZvciB0aGUg bG9nIGRpcnR5IGNvZGUgdG8gY2FsbC4gVGhpcworICogZnVuY3Rpb24gdXN1YWxseSBpcyBpbnZv a2VkIHdoZW4gcGFnaW5nIGlzIGVuYWJsZWQuIENoZWNrIHNoYWRvd19lbmFibGUoKQorICogYW5k IGhhcF9lbmFibGUoKSBmb3IgcmVmZXJlbmNlLgogICoKICAqIFRoZXNlIGZ1bmN0aW9uIHBvaW50 ZXJzIG11c3Qgbm90IGJlIGZvbGxvd2VkIHdpdGggdGhlIGxvZy1kaXJ0eSBsb2NrIGhlbGQuCiAg Ki8KLXZvaWQgcGFnaW5nX2xvZ19kaXJ0eV9pbml0KHN0cnVjdCBkb21haW4gKmQsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgICAgKCplbmFibGVfbG9nX2RpcnR5KShzdHJ1Y3QgZG9t YWluICpkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYm9vbF90IGxvZ19nbG9iYWwpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50 ICAgICgqZGlzYWJsZV9sb2dfZGlydHkpKHN0cnVjdCBkb21haW4gKmQpLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgdm9pZCAgICgqY2xlYW5fZGlydHlfYml0bWFwKShzdHJ1Y3QgZG9tYWlu ICpkKSkKK3ZvaWQgcGFnaW5nX2xvZ19kaXJ0eV9pbml0KHN0cnVjdCBkb21haW4gKmQsIGNvbnN0 IHN0cnVjdCBsb2dfZGlydHlfb3BzICpvcHMpCiB7Ci0gICAgZC0+YXJjaC5wYWdpbmcubG9nX2Rp cnR5LmVuYWJsZV9sb2dfZGlydHkgPSBlbmFibGVfbG9nX2RpcnR5OwotICAgIGQtPmFyY2gucGFn aW5nLmxvZ19kaXJ0eS5kaXNhYmxlX2xvZ19kaXJ0eSA9IGRpc2FibGVfbG9nX2RpcnR5OwotICAg IGQtPmFyY2gucGFnaW5nLmxvZ19kaXJ0eS5jbGVhbl9kaXJ0eV9iaXRtYXAgPSBjbGVhbl9kaXJ0 eV9iaXRtYXA7CisgICAgZC0+YXJjaC5wYWdpbmcubG9nX2RpcnR5Lm9wcyA9IG9wczsKIH0KIAog LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KZGlmZiAt LWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvY29tbW9uLmMgYi94ZW4vYXJjaC94ODYvbW0v c2hhZG93L2NvbW1vbi5jCmluZGV4IDFjOWQ5YjkuLmExOGFhMjUgMTAwNjQ0Ci0tLSBhL3hlbi9h cmNoL3g4Ni9tbS9zaGFkb3cvY29tbW9uLmMKKysrIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9j b21tb24uYwpAQCAtNDgsNiArNDgsMTIgQEAgc3RhdGljIHZvaWQgc2hfY2xlYW5fZGlydHlfYml0 bWFwKHN0cnVjdCBkb21haW4gKik7CiAgKiBDYWxsZWQgZm9yIGV2ZXJ5IGRvbWFpbiBmcm9tIGFy Y2hfZG9tYWluX2NyZWF0ZSgpICovCiBpbnQgc2hhZG93X2RvbWFpbl9pbml0KHN0cnVjdCBkb21h aW4gKmQsIHVuc2lnbmVkIGludCBkb21jcl9mbGFncykKIHsKKyAgICBzdGF0aWMgY29uc3Qgc3Ry dWN0IGxvZ19kaXJ0eV9vcHMgc2hfb3BzID0geworICAgICAgICAuZW5hYmxlICA9IHNoX2VuYWJs ZV9sb2dfZGlydHksCisgICAgICAgIC5kaXNhYmxlID0gc2hfZGlzYWJsZV9sb2dfZGlydHksCisg ICAgICAgIC5jbGVhbiAgID0gc2hfY2xlYW5fZGlydHlfYml0bWFwLAorICAgIH07CisKICAgICBJ TklUX1BBR0VfTElTVF9IRUFEKCZkLT5hcmNoLnBhZ2luZy5zaGFkb3cuZnJlZWxpc3QpOwogICAg IElOSVRfUEFHRV9MSVNUX0hFQUQoJmQtPmFyY2gucGFnaW5nLnNoYWRvdy5waW5uZWRfc2hhZG93 cyk7CiAKQEAgLTYyLDggKzY4LDcgQEAgaW50IHNoYWRvd19kb21haW5faW5pdChzdHJ1Y3QgZG9t YWluICpkLCB1bnNpZ25lZCBpbnQgZG9tY3JfZmxhZ3MpCiAjZW5kaWYKIAogICAgIC8qIFVzZSBz aGFkb3cgcGFnZXRhYmxlcyBmb3IgbG9nLWRpcnR5IHN1cHBvcnQgKi8KLSAgICBwYWdpbmdfbG9n X2RpcnR5X2luaXQoZCwgc2hfZW5hYmxlX2xvZ19kaXJ0eSwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgc2hfZGlzYWJsZV9sb2dfZGlydHksIHNoX2NsZWFuX2RpcnR5X2JpdG1hcCk7CisgICAg cGFnaW5nX2xvZ19kaXJ0eV9pbml0KGQsICZzaF9vcHMpOwogCiAjaWYgKFNIQURPV19PUFRJTUla QVRJT05TICYgU0hPUFRfT1VUX09GX1NZTkMpCiAgICAgZC0+YXJjaC5wYWdpbmcuc2hhZG93Lm9v c19hY3RpdmUgPSAwOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaCBi L3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKaW5kZXggOWJiMDcwZi4uZjg0ZjU3YiAxMDA2 NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaAorKysgYi94ZW4vaW5jbHVkZS9h c20teDg2L2RvbWFpbi5oCkBAIC0xNzUsOSArMTc1LDExIEBAIHN0cnVjdCBsb2dfZGlydHlfZG9t YWluIHsKICAgICB1bnNpZ25lZCBpbnQgICBkaXJ0eV9jb3VudDsKIAogICAgIC8qIGZ1bmN0aW9u cyB3aGljaCBhcmUgcGFnaW5nIG1vZGUgc3BlY2lmaWMgKi8KLSAgICBpbnQgICAgICAgICAgICAo KmVuYWJsZV9sb2dfZGlydHkgICApKHN0cnVjdCBkb21haW4gKmQsIGJvb2xfdCBsb2dfZ2xvYmFs KTsKLSAgICBpbnQgICAgICAgICAgICAoKmRpc2FibGVfbG9nX2RpcnR5ICApKHN0cnVjdCBkb21h aW4gKmQpOwotICAgIHZvaWQgICAgICAgICAgICgqY2xlYW5fZGlydHlfYml0bWFwICkoc3RydWN0 IGRvbWFpbiAqZCk7CisgICAgY29uc3Qgc3RydWN0IGxvZ19kaXJ0eV9vcHMgeworICAgICAgICBp bnQgICAgICAgICgqZW5hYmxlICApKHN0cnVjdCBkb21haW4gKmQsIGJvb2wgbG9nX2dsb2JhbCk7 CisgICAgICAgIGludCAgICAgICAgKCpkaXNhYmxlICkoc3RydWN0IGRvbWFpbiAqZCk7CisgICAg ICAgIHZvaWQgICAgICAgKCpjbGVhbiAgICkoc3RydWN0IGRvbWFpbiAqZCk7CisgICAgfSAqb3Bz OwogfTsKIAogc3RydWN0IHBhZ2luZ19kb21haW4gewpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUv YXNtLXg4Ni9wYWdpbmcuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcGFnaW5nLmgKaW5kZXggY2Vj NmJmZC4uOWFkNzRiZSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wYWdpbmcuaAor KysgYi94ZW4vaW5jbHVkZS9hc20teDg2L3BhZ2luZy5oCkBAIC0xNTAsMTEgKzE1MCw3IEBAIHZv aWQgcGFnaW5nX2xvZ19kaXJ0eV9yYW5nZShzdHJ1Y3QgZG9tYWluICpkLAogaW50IHBhZ2luZ19s b2dfZGlydHlfZW5hYmxlKHN0cnVjdCBkb21haW4gKmQsIGJvb2xfdCBsb2dfZ2xvYmFsKTsKIAog LyogbG9nIGRpcnR5IGluaXRpYWxpemF0aW9uICovCi12b2lkIHBhZ2luZ19sb2dfZGlydHlfaW5p dChzdHJ1Y3QgZG9tYWluICpkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAoKmVu YWJsZV9sb2dfZGlydHkpKHN0cnVjdCBkb21haW4gKmQsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbF90IGxvZ19nbG9iYWwpLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50ICAoKmRpc2FibGVfbG9nX2RpcnR5KShzdHJ1Y3QgZG9t YWluICpkKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKCpjbGVhbl9kaXJ0eV9i aXRtYXApKHN0cnVjdCBkb21haW4gKmQpKTsKK3ZvaWQgcGFnaW5nX2xvZ19kaXJ0eV9pbml0KHN0 cnVjdCBkb21haW4gKmQsIGNvbnN0IHN0cnVjdCBsb2dfZGlydHlfb3BzICpvcHMpOwogCiAvKiBt YXJrIGEgcGFnZSBhcyBkaXJ0eSAqLwogdm9pZCBwYWdpbmdfbWFya19kaXJ0eShzdHJ1Y3QgZG9t YWluICpkLCBtZm5fdCBnbWZuKTsKLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxA bGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==