From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vitaly Kuznetsov Subject: [PATCH] x86: enable RCU based table free when PARAVIRT Date: Wed, 23 Aug 2017 15:45:21 +0200 Message-ID: <20170823134521.5068-1-vkuznets__10385.2393840954$1503495995$gmane$org@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dkVyL-0004RB-JN for xen-devel@lists.xenproject.org; Wed, 23 Aug 2017 13:45:29 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: x86@kernel.org Cc: Juergen Gross , Stephen Hemminger , Peter Zijlstra , Andrew Cooper , linux-kernel@vger.kernel.org, Steven Rostedt , Andy Lutomirski , Jork Loeser , Ingo Molnar , "H. Peter Anvin" , xen-devel@lists.xenproject.org, Thomas Gleixner , KY Srinivasan , Linus Torvalds , Boris Ostrovsky , "Kirill A. Shutemov" List-Id: xen-devel@lists.xenproject.org T24geDg2IHNvZnR3YXJlIHBhZ2UtdGFibGUgd2Fsa2VycyBkZXBlbmQgb24gdGhlIGZhY3QgdGhh dCByZW1vdGUgVExCIGZsdXNoCmRvZXMgYW4gSVBJOiB3YWxrIGlzIHBlcmZvcm1lZCBsb2NrbGVz cyBidXQgd2l0aCBpbnRlcnJ1cHRzIGRpc2FibGVkIGFuZCBpbgpjYXNlIHRoZSBwYWdldGFibGUg aXMgZnJlZWQgdGhlIGZyZWVpbmcgQ1BVIHdpbGwgZ2V0IGJsb2NrZWQgYXMgcmVtb3RlIFRMQgpm bHVzaCBpcyByZXF1aXJlZC4gT24gb3RoZXIgYXJjaGl0ZWN0dXJlIHdoaWNoIGRvbid0IHJlcXVp cmUgYW4gSVBJIHRvIGRvCnJlbW90ZSBUTEIgZmx1c2ggd2UgaGF2ZSBhbiBSQ1UtYmFzZWQgbWVj aGFuaXNtIChzZWUKaW5jbHVkZS9hc20tZ2VuZXJpYy90bGIuaCBmb3IgbW9yZSBkZXRhaWxzKS4K CkluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyB3ZSBtYXkgd2FudCB0byBvdmVycmlkZSAuZmx1 c2hfdGxiX290aGVycyBob29rCmluIHB2X21tdV9vcHMgYW5kIHVzZSBhIGh5cGVyY2FsbCBhc2tp bmcgdGhlIGh5cGVydmlzb3IgdG8gZG8gcmVtb3RlIFRMQgpmbHVzaCBmb3IgdXMuIFRoaXMgYnJl YWtzIHRoZSBhc3N1bXB0aW9uIGFib3V0IElQSS4gWGVuIFBWIGRvZXMgdGhpcyBmb3IKeWVhcnMg YW5kIHRoZSB1cGNvbWluZyByZW1vdGUgVExCIGZsdXNoIGZvciBIeXBlci1WIHdpbGwgZG8gaXQg dG9vLiBUaGlzCmlzIG5vdCBzYWZlLCBzb2Z0d2FyZSBwYWdldGFibGUgd2Fsa2VycyBtYXkgc3Rl cCBvbiBhbiBhbHJlYWR5IGZyZWVkIHBhZ2UuCgpTb2x2ZSB0aGUgaXNzdWUgYnkgZW5hYmxpbmcg UkNVLWJhc2VkIHRhYmxlIGZyZWUgbWVjaGFuaXNtIHdoZW4gUEFSQVZJUlQKaXMgc2VsZWN0ZWQg aW4gY29uZmlnLiBUZXN0aW5nIHdpdGgga2VybmJlbmNoIGRvZXNuJ3Qgc2hvdyBhbnkgbm90YWJs ZQpwZXJmb3JtYW5jZSBpbXBhY3Q6Cgo2LUNQVSBob3N0OgoKQXZlcmFnZSBIYWxmIGxvYWQgLWog MyBSdW4gKHN0ZCBkZXZpYXRpb24pOgpDVVJSRU5UICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgSEFWRV9SQ1VfVEFCTEVfRlJFRQo9PT09PT09ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgPT09PT09PT09PT09PT09PT09PQpFbGFwc2VkIFRpbWUgNDAwLjQ5OCAoMC4xNzk2 NzkpICAgICAgICAgRWxhcHNlZCBUaW1lIDM5OS45MDkgKDAuMTYyODUzKQpVc2VyIFRpbWUgMTA5 OC43MiAoMC4yNzg1MzYpICAgICAgICAgICAgVXNlciBUaW1lIDEwOTcuNTkgKDAuMjgzODk0KQpT eXN0ZW0gVGltZSAxMDAuMzAxICgwLjIwMTYyOSkgICAgICAgICAgU3lzdGVtIFRpbWUgOTkuNzM2 ICgwLjE5NjI1NCkKUGVyY2VudCBDUFUgMjk5ICgwKSAgICAgICAgICAgICAgICAgICAgIFBlcmNl bnQgQ1BVIDI5OSAoMCkKQ29udGV4dCBTd2l0Y2hlcyA1Nzc0LjEgKDY5LjIxMjEpICAgICAgIENv bnRleHQgU3dpdGNoZXMgNTc0NC40ICg3OS40MTYyKQpTbGVlcHMgODc2MjEuMiAoNzguMTA5Mykg ICAgICAgICAgICAgICAgU2xlZXBzIDg3NTg2LjEgKDk5LjcwNzkpCgpBdmVyYWdlIE9wdGltYWwg bG9hZCAtaiAyNCBSdW4gKHN0ZCBkZXZpYXRpb24pOgpDVVJSRU5UICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgSEFWRV9SQ1VfVEFCTEVfRlJFRQo9PT09PT09ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgPT09PT09PT09PT09PT09PT09PQpFbGFwc2VkIFRpbWUgMjE5LjAz ICgwLjY1MjUzNCkgICAgICAgICAgRWxhcHNlZCBUaW1lIDIxOC45NTkgKDAuNTk4Njc0KQpVc2Vy IFRpbWUgMTExOS41MSAoMjEuMzI4NCkgICAgICAgICAgICAgVXNlciBUaW1lIDExMTguODEgKDIx Ljc3OTMpClN5c3RlbSBUaW1lIDEwMC40OTkgKDAuMzg5MzA4KSAgICAgICAgICBTeXN0ZW0gVGlt ZSA5OS44MzM1ICgwLjI1MTQyMykKUGVyY2VudCBDUFUgNDMyLjUgKDEzNi45NzQpICAgICAgICAg ICAgIFBlcmNlbnQgQ1BVIDQzMi40NSAoMTM2LjkyMikKQ29udGV4dCBTd2l0Y2hlcyA4MTgyNy40 ICg3ODAyOS41KSAgICAgIENvbnRleHQgU3dpdGNoZXMgODE4MTguNSAoNzgwNTEpClNsZWVwcyA5 NzEyNC44ICg5ODIyLjQpICAgICAgICAgICAgICAgICBTbGVlcHMgOTcyMDcuOSAoOTk1NS4wNCkK CjE2LUNQVSBob3N0OgoKQXZlcmFnZSBIYWxmIGxvYWQgLWogOCBSdW4gKHN0ZCBkZXZpYXRpb24p OgpDVVJSRU5UICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSEFWRV9SQ1VfVEFCTEVf RlJFRQo9PT09PT09ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPT09PT09PT09PT09 PT09PT09PQpFbGFwc2VkIFRpbWUgMjEzLjUzOCAoMy43ODkxKSAgICAgICAgICAgRWxhcHNlZCBU aW1lIDIxMi41ICgzLjEwOTM5KQpVc2VyIFRpbWUgMTMwNi40ICgxLjgzMzk5KSAgICAgICAgICAg ICAgVXNlciBUaW1lIDEzMDcuNjUgKDEuMDEzNjQpClN5c3RlbSBUaW1lIDE5NC41OSAoMC44NjQz NzgpICAgICAgICAgICBTeXN0ZW0gVGltZSAxOTUuNDc4ICgwLjc5NDU4OCkKUGVyY2VudCBDUFUg NzAyLjYgKDEzLjUzODgpICAgICAgICAgICAgIFBlcmNlbnQgQ1BVIDcwNyAoMTEuMTEzMSkKQ29u dGV4dCBTd2l0Y2hlcyAyMTE4OS4yICgxMTk5LjQpICAgICAgIENvbnRleHQgU3dpdGNoZXMgMjEy ODguMiAoNTUyLjM4OCkKU2xlZXBzIDg5MzkwLjIgKDQ4Mi4zMjUpICAgICAgICAgICAgICAgIFNs ZWVwcyA4OTY3NyAoMjc3LjA2KQoKQXZlcmFnZSBPcHRpbWFsIGxvYWQgLWogNjQgUnVuIChzdGQg ZGV2aWF0aW9uKToKQ1VSUkVOVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhBVkVf UkNVX1RBQkxFX0ZSRUUKPT09PT09PSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID09 PT09PT09PT09PT09PT09PT0KRWxhcHNlZCBUaW1lIDEzNy44NjYgKDAuNzg3OTI4KSAgICAgICAg IEVsYXBzZWQgVGltZSAxMzguNDM4ICgwLjIxODc5MikKVXNlciBUaW1lIDE0ODguOTIgKDE5Mi4z OTkpICAgICAgICAgICAgIFVzZXIgVGltZSAxNDg5LjkyICgxOTIuMTM1KQpTeXN0ZW0gVGltZSAy MzQuOTgxICg0Mi41ODA2KSAgICAgICAgICAgU3lzdGVtIFRpbWUgMjM2LjA5ICg0Mi44MTM4KQpQ ZXJjZW50IENQVSAxMDU3LjEgKDM3My44MjYpICAgICAgICAgICAgUGVyY2VudCBDUFUgMTA1Ny4x ICgzNjkuMTE0KQpDb250ZXh0IFN3aXRjaGVzIDE4NzUxNCAoMTc1MzI0KSAgICAgICAgQ29udGV4 dCBTd2l0Y2hlcyAxODczNTggKDE3NTA2MCkKU2xlZXBzIDExMjYzMyAoMjQ1MzUuNSkgICAgICAg ICAgICAgICAgIFNsZWVwcyAxMTE3NDMgKDIzMjk3LjYpCgpTdWdnZXN0ZWQtYnk6IFBldGVyIFpp amxzdHJhIDxwZXRlcnpAaW5mcmFkZWFkLm9yZz4KU2lnbmVkLW9mZi1ieTogVml0YWx5IEt1em5l dHNvdiA8dmt1em5ldHNAcmVkaGF0LmNvbT4KQWNrZWQtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9z c0BzdXNlLmNvbT4KLS0tCkNoYW5nZXMgc2luY2UgUkZDOgotIEFkZGVkIEp1ZXJnZW4ncyBBY2tl ZC1ieS4gRml4ZWQgYSB0eXBvIGluIHRoZSBkZXNjcmlwdGlvbi4KCkkgZGlkbid0IGdldCBhbnkg b3RoZXIgZmVlZGJhY2sgb24gbXkgUkZDLCBhc3N1bWluZyB0aGVyZSBhcmUgbm8Kb2JqZWN0aW9u cywgZHJvcHBpbmcgUkZDLgotLS0KIGFyY2gveDg2L0tjb25maWcgICAgICAgICAgIHwgIDEgKwog YXJjaC94ODYvaW5jbHVkZS9hc20vdGxiLmggfCAgNyArKysrKysrCiBhcmNoL3g4Ni9tbS9wZ3Rh YmxlLmMgICAgICB8IDE1ICsrKysrKysrKysrLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNl cnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FyY2gveDg2L0tjb25maWcg Yi9hcmNoL3g4Ni9LY29uZmlnCmluZGV4IDMyM2NiMDY1YmU1ZS4uODAzMmUxYWMxNGY1IDEwMDY0 NAotLS0gYS9hcmNoL3g4Ni9LY29uZmlnCisrKyBiL2FyY2gveDg2L0tjb25maWcKQEAgLTE2OCw2 ICsxNjgsNyBAQCBjb25maWcgWDg2CiAJc2VsZWN0IEhBVkVfUEVSRl9SRUdTCiAJc2VsZWN0IEhB VkVfUEVSRl9VU0VSX1NUQUNLX0RVTVAKIAlzZWxlY3QgSEFWRV9SRUdTX0FORF9TVEFDS19BQ0NF U1NfQVBJCisJc2VsZWN0IEhBVkVfUkNVX1RBQkxFX0ZSRUUgICAgICAgICAgICAgIGlmIFNNUCAm JiBQQVJBVklSVAogCXNlbGVjdCBIQVZFX1JFTElBQkxFX1NUQUNLVFJBQ0UJCWlmIFg4Nl82NCAm JiBGUkFNRV9QT0lOVEVSICYmIFNUQUNLX1ZBTElEQVRJT04KIAlzZWxlY3QgSEFWRV9TVEFDS19W QUxJREFUSU9OCQlpZiBYODZfNjQKIAlzZWxlY3QgSEFWRV9TWVNDQUxMX1RSQUNFUE9JTlRTCmRp ZmYgLS1naXQgYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS90bGIuaCBiL2FyY2gveDg2L2luY2x1ZGUv YXNtL3RsYi5oCmluZGV4IGM3Nzk3MzA3ZmMyYi4uMWQwNzRjNTYwYTQ4IDEwMDY0NAotLS0gYS9h cmNoL3g4Ni9pbmNsdWRlL2FzbS90bGIuaAorKysgYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS90bGIu aApAQCAtMTUsNCArMTUsMTEgQEAKIAogI2luY2x1ZGUgPGFzbS1nZW5lcmljL3RsYi5oPgogCisj aWZkZWYgQ09ORklHX0hBVkVfUkNVX1RBQkxFX0ZSRUUKK3N0YXRpYyBpbmxpbmUgdm9pZCBfX3Rs Yl9yZW1vdmVfdGFibGUodm9pZCAqdGFibGUpCit7CisJZnJlZV9wYWdlX2FuZF9zd2FwX2NhY2hl KHRhYmxlKTsKK30KKyNlbmRpZgorCiAjZW5kaWYgLyogX0FTTV9YODZfVExCX0ggKi8KZGlmZiAt LWdpdCBhL2FyY2gveDg2L21tL3BndGFibGUuYyBiL2FyY2gveDg2L21tL3BndGFibGUuYwppbmRl eCA1MDhhNzA4ZWI5YTYuLmY5YTNjZGI5YjU3NCAxMDA2NDQKLS0tIGEvYXJjaC94ODYvbW0vcGd0 YWJsZS5jCisrKyBiL2FyY2gveDg2L21tL3BndGFibGUuYwpAQCAtNTIsMTEgKzUyLDE4IEBAIHN0 YXRpYyBpbnQgX19pbml0IHNldHVwX3VzZXJwdGUoY2hhciAqYXJnKQogfQogZWFybHlfcGFyYW0o InVzZXJwdGUiLCBzZXR1cF91c2VycHRlKTsKIAorI2lmbmRlZiBDT05GSUdfSEFWRV9SQ1VfVEFC TEVfRlJFRQorc3RhdGljIGlubGluZSB2b2lkIHRsYl9yZW1vdmVfdGFibGUoc3RydWN0IG1tdV9n YXRoZXIgKnRsYiwgdm9pZCAqdGFibGUpCit7CisJcmV0dXJuIHRsYl9yZW1vdmVfcGFnZSh0bGIs IHRhYmxlKTsKK30KKyNlbmRpZgorCiB2b2lkIF9fX3B0ZV9mcmVlX3RsYihzdHJ1Y3QgbW11X2dh dGhlciAqdGxiLCBzdHJ1Y3QgcGFnZSAqcHRlKQogewogCXBndGFibGVfcGFnZV9kdG9yKHB0ZSk7 CiAJcGFyYXZpcnRfcmVsZWFzZV9wdGUocGFnZV90b19wZm4ocHRlKSk7Ci0JdGxiX3JlbW92ZV9w YWdlKHRsYiwgcHRlKTsKKwl0bGJfcmVtb3ZlX3RhYmxlKHRsYiwgcHRlKTsKIH0KIAogI2lmIENP TkZJR19QR1RBQkxFX0xFVkVMUyA+IDIKQEAgLTcyLDIxICs3OSwyMSBAQCB2b2lkIF9fX3BtZF9m cmVlX3RsYihzdHJ1Y3QgbW11X2dhdGhlciAqdGxiLCBwbWRfdCAqcG1kKQogCXRsYi0+bmVlZF9m bHVzaF9hbGwgPSAxOwogI2VuZGlmCiAJcGd0YWJsZV9wbWRfcGFnZV9kdG9yKHBhZ2UpOwotCXRs Yl9yZW1vdmVfcGFnZSh0bGIsIHBhZ2UpOworCXRsYl9yZW1vdmVfdGFibGUodGxiLCBwYWdlKTsK IH0KIAogI2lmIENPTkZJR19QR1RBQkxFX0xFVkVMUyA+IDMKIHZvaWQgX19fcHVkX2ZyZWVfdGxi KHN0cnVjdCBtbXVfZ2F0aGVyICp0bGIsIHB1ZF90ICpwdWQpCiB7CiAJcGFyYXZpcnRfcmVsZWFz ZV9wdWQoX19wYShwdWQpID4+IFBBR0VfU0hJRlQpOwotCXRsYl9yZW1vdmVfcGFnZSh0bGIsIHZp cnRfdG9fcGFnZShwdWQpKTsKKwl0bGJfcmVtb3ZlX3RhYmxlKHRsYiwgdmlydF90b19wYWdlKHB1 ZCkpOwogfQogCiAjaWYgQ09ORklHX1BHVEFCTEVfTEVWRUxTID4gNAogdm9pZCBfX19wNGRfZnJl ZV90bGIoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwgcDRkX3QgKnA0ZCkKIHsKIAlwYXJhdmlydF9y ZWxlYXNlX3A0ZChfX3BhKHA0ZCkgPj4gUEFHRV9TSElGVCk7Ci0JdGxiX3JlbW92ZV9wYWdlKHRs YiwgdmlydF90b19wYWdlKHA0ZCkpOworCXRsYl9yZW1vdmVfdGFibGUodGxiLCB2aXJ0X3RvX3Bh Z2UocDRkKSk7CiB9CiAjZW5kaWYJLyogQ09ORklHX1BHVEFCTEVfTEVWRUxTID4gNCAqLwogI2Vu ZGlmCS8qIENPTkZJR19QR1RBQkxFX0xFVkVMUyA+IDMgKi8KLS0gCjIuMTMuNQoKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5n IGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1k ZXZlbAo=