From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dongli Zhang Subject: [PATCH v6 2/2] xen: move TLB-flush filtering out into populate_physmap during vm creation Date: Tue, 20 Sep 2016 10:31:04 +0800 Message-ID: <1474338664-5054-2-git-send-email-dongli.zhang@oracle.com> References: <1474338664-5054-1-git-send-email-dongli.zhang@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1474338664-5054-1-git-send-email-dongli.zhang@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, jinsong.liu@alibaba-inc.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, tim@xen.org, jbeulich@suse.com, andrew.cooper3@citrix.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRlZCBwYXJ0cyBvZiBUT0RPIGxlZnQgaW4gY29tbWl0IGlkCmE5 MDJjMTJlZTQ1ZmM5Mzg5ZWI4ZmU1NGVlZGRhZjI2N2E1NTVjNTggKE1vcmUgZWZmaWNpZW50IFRM Qi1mbHVzaApmaWx0ZXJpbmcgaW4gYWxsb2NfaGVhcF9wYWdlcygpKS4gSXQgbW92ZWQgVExCLWZs dXNoIGZpbHRlcmluZyBvdXQgaW50bwpwb3B1bGF0ZV9waHlzbWFwLiBCZWNhdXNlIG9mIFRMQi1m bHVzaCBpbiBhbGxvY19oZWFwX3BhZ2VzLCBpdCdzIHZlcnkgc2xvdwp0byBjcmVhdGUgYSBndWVz dCB3aXRoIG1lbW9yeSBzaXplIG9mIG1vcmUgdGhhbiAxMDBHQiBvbiBob3N0IHdpdGggMTAwKwpj cHVzLgoKVGhpcyBwYXRjaCBpbnRyb2R1Y2VkIGEgIk1FTUZfbm9fdGxiZmx1c2giIGJpdCB0byBt ZW1mbGFncyB0byBpbmRpY2F0ZQp3aGV0aGVyIFRMQi1mbHVzaCBzaG91bGQgYmUgZG9uZSBpbiBh bGxvY19oZWFwX3BhZ2VzIG9yIGl0cyBjYWxsZXIKcG9wdWxhdGVfcGh5c21hcC4gIE9uY2UgdGhp cyBiaXQgaXMgc2V0IGluIG1lbWZsYWdzLCBhbGxvY19oZWFwX3BhZ2VzIHdpbGwKaWdub3JlIFRM Qi1mbHVzaC4gVG8gdXNlIHRoaXMgYml0IGFmdGVyIHZtIGlzIGNyZWF0ZWQgbWlnaHQgbGVhZCB0 bwpzZWN1cml0eSBpc3N1ZSwgdGhhdCBpcywgdGhpcyB3b3VsZCBtYWtlIHBhZ2VzIGFjY2Vzc2li bGUgdG8gdGhlIGd1ZXN0IEIsCndoZW4gZ3Vlc3QgQSBtYXkgc3RpbGwgaGF2ZSBhIGNhY2hlZCBt YXBwaW5nIHRvIHRoZW0uCgpUaGVyZWZvcmUsIHRoaXMgcGF0Y2ggYWxzbyBpbnRyb2R1Y2VkIGEg ImNyZWF0aW9uX2ZpbmlzaGVkIiBmaWVsZCB0byBzdHJ1Y3QKZG9tYWluIHRvIGluZGljYXRlIHdo ZXRoZXIgdGhpcyBkb21haW4gaGFzIGV2ZXIgZ290IHVucGF1c2VkIGJ5IGh5cGVydmlzb3IuCk1F TUZfbm9fdGxiZmx1c2ggY2FuIGJlIHNldCBvbmx5IGR1cmluZyB2bSBjcmVhdGlvbiBwaGFzZSB3 aGVuCmNyZWF0aW9uX2ZpbmlzaGVkIGlzIHN0aWxsIGZhbHNlIGJlZm9yZSB0aGlzIGRvbWFpbiBn ZXRzIHVucGF1c2VkIGZvciB0aGUKZmlyc3QgdGltZS4KClNpZ25lZC1vZmYtYnk6IERvbmdsaSBa aGFuZyA8ZG9uZ2xpLnpoYW5nQG9yYWNsZS5jb20+Ci0tLQpDaGFuZ2VkIHNpbmNlIHY1OgogICog UmVtb3ZlIGNvbmRpdGlvbmFsIGNoZWNrIGJlZm9yZSAiZC0+Y3JlYXRpb25fZmluaXNoZWQgPSB0 cnVlOyIuCiAgKiBQbGFjZSAiYm9vbCBjcmVhdGlvbl9maW5pc2hlZDsiIG5leHQgdG8gdGhlIG90 aGVyIGdyb3VwIG9mIGJvb2xlYW5zLgogICogUmVtb3ZlIGR1cGxpY2F0ZSAib25seSIgaW4gY29t bWVudHMuCgpDaGFuZ2VkIHNpbmNlIHY0OgogICogUmVuYW1lIGlzX2V2ZXJfdW5wYXVzZWQgdG8g Y3JlYXRpb25fZmluaXNoZWQuCiAgKiBDaGFuZ2UgYm9vbF90IHRvIGJvb2wuCiAgKiBQb2xpc2gg Y29tbWVudHMuCgpDaGFuZ2VkIHNpbmNlIHYzOgogICogU2V0IHRoZSBmbGFnIHRvIHRydWUgaW4g ZG9tYWluX3VucGF1c2VfYnlfc3lzdGVtY29udHJvbGxlciB3aGVuCiAgICB1bnBhdXNpbmcgdGhl IGd1ZXN0IGRvbWFpbiBmb3IgdGhlIGZpcnN0IHRpbWUuCiAgKiBVc2UgdHJ1ZS9mYWxzZSBmb3Ig YWxsIGJvb3RfdCB2YXJpYWJsZXMuCiAgKiBBZGQgdW5saWtlbHkgdG8gb3B0aW1pemUgImlmIHN0 YXRlbWVudCIuCiAgKiBDb3JyZWN0IGNvbW1lbnQgc3R5bGUuCgpDaGFuZ2VkIHNpbmNlIHYyOgog ICogTGltaXQgdGhpcyBvcHRpbWl6YXRpb24gdG8gZG9tYWluIGNyZWF0aW9uIHRpbWUuCgotLS0K IHhlbi9jb21tb24vZG9tYWluLmMgICAgIHwgIDcgKysrKysrKwogeGVuL2NvbW1vbi9tZW1vcnku YyAgICAgfCAyMiArKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vY29tbW9uL3BhZ2VfYWxsb2Mu YyB8ICA0ICsrKy0KIHhlbi9pbmNsdWRlL3hlbi9tbS5oICAgIHwgIDIgKysKIHhlbi9pbmNsdWRl L3hlbi9zY2hlZC5oIHwgIDYgKysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDQwIGluc2VydGlvbnMo KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2RvbWFpbi5jIGIveGVu L2NvbW1vbi9kb21haW4uYwppbmRleCBhODgwNGU0Li4zYWJhY2E5IDEwMDY0NAotLS0gYS94ZW4v Y29tbW9uL2RvbWFpbi5jCisrKyBiL3hlbi9jb21tb24vZG9tYWluLmMKQEAgLTEwMDQsNiArMTAw NCwxMyBAQCBpbnQgZG9tYWluX3VucGF1c2VfYnlfc3lzdGVtY29udHJvbGxlcihzdHJ1Y3QgZG9t YWluICpkKQogewogICAgIGludCBvbGQsIG5ldywgcHJldiA9IGQtPmNvbnRyb2xsZXJfcGF1c2Vf Y291bnQ7CiAKKyAgICAvKgorICAgICAqIFdlIHJlY29yZCB0aGlzIGluZm9ybWF0aW9uIGhlcmUg Zm9yIHBvcHVsYXRlX3BoeXNtYXAgdG8gZmlndXJlIG91dAorICAgICAqIHRoYXQgdGhlIGRvbWFp biBoYXMgZmluaXNoZWQgYmVpbmcgY3JlYXRlZC4gSW4gZmFjdCwgd2UncmUgb25seQorICAgICAq IGFsbG93ZWQgdG8gc2V0IHRoZSBNRU1GX25vX3RsYmZsdXNoIGZsYWcgZHVyaW5nIFZNIGNyZWF0 aW9uLgorICAgICAqLworICAgIGQtPmNyZWF0aW9uX2ZpbmlzaGVkID0gdHJ1ZTsKKwogICAgIGRv CiAgICAgewogICAgICAgICBvbGQgPSBwcmV2OwpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9tZW1v cnkuYyBiL3hlbi9jb21tb24vbWVtb3J5LmMKaW5kZXggY2MwZjY5ZS4uMjE3OTdjYSAxMDA2NDQK LS0tIGEveGVuL2NvbW1vbi9tZW1vcnkuYworKysgYi94ZW4vY29tbW9uL21lbW9yeS5jCkBAIC0x NDEsNiArMTQxLDggQEAgc3RhdGljIHZvaWQgcG9wdWxhdGVfcGh5c21hcChzdHJ1Y3QgbWVtb3Bf YXJncyAqYSkKICAgICB1bnNpZ25lZCBpbnQgaSwgajsKICAgICB4ZW5fcGZuX3QgZ3BmbiwgbWZu OwogICAgIHN0cnVjdCBkb21haW4gKmQgPSBhLT5kb21haW4sICpjdXJyX2QgPSBjdXJyZW50LT5k b21haW47CisgICAgYm9vbCBuZWVkX3RsYmZsdXNoID0gZmFsc2U7CisgICAgdWludDMyX3QgdGxi Zmx1c2hfdGltZXN0YW1wID0gMDsKIAogICAgIGlmICggIWd1ZXN0X2hhbmRsZV9zdWJyYW5nZV9v a2F5KGEtPmV4dGVudF9saXN0LCBhLT5ucl9kb25lLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGEtPm5yX2V4dGVudHMtMSkgKQpAQCAtMTUwLDYgKzE1MiwxNyBAQCBzdGF0 aWMgdm9pZCBwb3B1bGF0ZV9waHlzbWFwKHN0cnVjdCBtZW1vcF9hcmdzICphKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgIG1heF9vcmRlcihjdXJyX2QpKSApCiAgICAgICAgIHJldHVybjsK IAorICAgIC8qCisgICAgICogV2l0aCBNRU1GX25vX3RsYmZsdXNoIHNldCwgYWxsb2NfaGVhcF9w YWdlcygpIHdpbGwgaWdub3JlCisgICAgICogVExCLWZsdXNoZXMuIEFmdGVyIFZNIGNyZWF0aW9u LCB0aGlzIGlzIGEgc2VjdXJpdHkgaXNzdWUgKGl0IGNhbgorICAgICAqIG1ha2UgcGFnZXMgYWNj ZXNzaWJsZSB0byBndWVzdCBCLCB3aGVuIGd1ZXN0IEEgbWF5IHN0aWxsIGhhdmUgYQorICAgICAq IGNhY2hlZCBtYXBwaW5nIHRvIHRoZW0pLiBTbyB3ZSBkbyB0aGlzIG9ubHkgZHVyaW5nIGRvbWFp biBjcmVhdGlvbiwKKyAgICAgKiB3aGVuIHRoZSBkb21haW4gaXRzZWxmIGhhcyBub3QgeWV0IGJl ZW4gdW5wYXVzZWQgZm9yIHRoZSBmaXJzdAorICAgICAqIHRpbWUuCisgICAgICovCisgICAgaWYg KCB1bmxpa2VseSghZC0+Y3JlYXRpb25fZmluaXNoZWQpICkKKyAgICAgICAgYS0+bWVtZmxhZ3Mg fD0gTUVNRl9ub190bGJmbHVzaDsKKwogICAgIGZvciAoIGkgPSBhLT5ucl9kb25lOyBpIDwgYS0+ bnJfZXh0ZW50czsgaSsrICkKICAgICB7CiAgICAgICAgIGlmICggaSAhPSBhLT5ucl9kb25lICYm IGh5cGVyY2FsbF9wcmVlbXB0X2NoZWNrKCkgKQpAQCAtMjE0LDYgKzIyNywxMyBAQCBzdGF0aWMg dm9pZCBwb3B1bGF0ZV9waHlzbWFwKHN0cnVjdCBtZW1vcF9hcmdzICphKQogICAgICAgICAgICAg ICAgICAgICBnb3RvIG91dDsKICAgICAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAgICAgICBp ZiAoIHVubGlrZWx5KGEtPm1lbWZsYWdzICYgTUVNRl9ub190bGJmbHVzaCkgKQorICAgICAgICAg ICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgZm9yICggaiA9IDA7IGogPCAoMVUgPDwgYS0+ ZXh0ZW50X29yZGVyKTsgaisrICkKKyAgICAgICAgICAgICAgICAgICAgICAgIGFjY3VtdWxhdGVf dGxiZmx1c2goJm5lZWRfdGxiZmx1c2gsICZwYWdlW2pdLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmdGxiZmx1c2hfdGltZXN0YW1wKTsKKyAgICAgICAgICAg ICAgICB9CisKICAgICAgICAgICAgICAgICBtZm4gPSBwYWdlX3RvX21mbihwYWdlKTsKICAgICAg ICAgICAgIH0KIApAQCAtMjMyLDYgKzI1Miw4IEBAIHN0YXRpYyB2b2lkIHBvcHVsYXRlX3BoeXNt YXAoc3RydWN0IG1lbW9wX2FyZ3MgKmEpCiAgICAgfQogCiBvdXQ6CisgICAgaWYgKCBuZWVkX3Rs YmZsdXNoICkKKyAgICAgICAgZmlsdGVyZWRfZmx1c2hfdGxiX21hc2sodGxiZmx1c2hfdGltZXN0 YW1wKTsKICAgICBhLT5ucl9kb25lID0gaTsKIH0KIApkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9w YWdlX2FsbG9jLmMgYi94ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYwppbmRleCBkN2NhM2EwLi5hZTI0 NzZkIDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3BhZ2VfYWxsb2MuYworKysgYi94ZW4vY29tbW9u L3BhZ2VfYWxsb2MuYwpAQCAtODI3LDcgKzgyNyw5IEBAIHN0YXRpYyBzdHJ1Y3QgcGFnZV9pbmZv ICphbGxvY19oZWFwX3BhZ2VzKAogICAgICAgICBCVUdfT04ocGdbaV0uY291bnRfaW5mbyAhPSBQ R0Nfc3RhdGVfZnJlZSk7CiAgICAgICAgIHBnW2ldLmNvdW50X2luZm8gPSBQR0Nfc3RhdGVfaW51 c2U7CiAKLSAgICAgICAgYWNjdW11bGF0ZV90bGJmbHVzaCgmbmVlZF90bGJmbHVzaCwgJnBnW2ld LCAmdGxiZmx1c2hfdGltZXN0YW1wKTsKKyAgICAgICAgaWYgKCAhKG1lbWZsYWdzICYgTUVNRl9u b190bGJmbHVzaCkgKQorICAgICAgICAgICAgYWNjdW11bGF0ZV90bGJmbHVzaCgmbmVlZF90bGJm bHVzaCwgJnBnW2ldLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdGxiZmx1c2hf dGltZXN0YW1wKTsKIAogICAgICAgICAvKiBJbml0aWFsaXNlIGZpZWxkcyB3aGljaCBoYXZlIG90 aGVyIHVzZXMgZm9yIGZyZWUgcGFnZXMuICovCiAgICAgICAgIHBnW2ldLnUuaW51c2UudHlwZV9p bmZvID0gMDsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9tbS5oIGIveGVuL2luY2x1ZGUv eGVuL21tLmgKaW5kZXggNTBkYjAxZC4uNzZmYmI4MiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUv eGVuL21tLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL21tLmgKQEAgLTIyMiw2ICsyMjIsOCBAQCBz dHJ1Y3QgbnBmZWMgewogI2RlZmluZSAgTUVNRl9leGFjdF9ub2RlICAoMVU8PF9NRU1GX2V4YWN0 X25vZGUpCiAjZGVmaW5lIF9NRU1GX25vX293bmVyICAgIDUKICNkZWZpbmUgIE1FTUZfbm9fb3du ZXIgICAgKDFVPDxfTUVNRl9ub19vd25lcikKKyNkZWZpbmUgX01FTUZfbm9fdGxiZmx1c2ggNgor I2RlZmluZSAgTUVNRl9ub190bGJmbHVzaCAoMVU8PF9NRU1GX25vX3RsYmZsdXNoKQogI2RlZmlu ZSBfTUVNRl9ub2RlICAgICAgICA4CiAjZGVmaW5lICBNRU1GX25vZGVfbWFzayAgICgoMVUgPDwg KDggKiBzaXplb2Yobm9kZWlkX3QpKSkgLSAxKQogI2RlZmluZSAgTUVNRl9ub2RlKG4pICAgICAo KCgobikgKyAxKSAmIE1FTUZfbm9kZV9tYXNrKSA8PCBfTUVNRl9ub2RlKQpkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUveGVuL3NjaGVkLmggYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAppbmRleCAy ZjljMTVmLi5jZDA1ZTU1IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAorKysg Yi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaApAQCAtMzg2LDYgKzM4NiwxMiBAQCBzdHJ1Y3QgZG9t YWluCiAgICAgYm9vbF90ICAgICAgICAgICBkaXNhYmxlX21pZ3JhdGU7CiAgICAgLyogSXMgdGhp cyBndWVzdCBiZWluZyBkZWJ1Z2dlZCBieSBkb20wPyAqLwogICAgIGJvb2xfdCAgICAgICAgICAg ZGVidWdnZXJfYXR0YWNoZWQ7CisgICAgLyoKKyAgICAgKiBTZXQgdG8gdHJ1ZSBhdCB0aGUgdmVy eSBlbmQgb2YgZG9tYWluIGNyZWF0aW9uLCB3aGVuIHRoZSBkb21haW4gaXMKKyAgICAgKiB1bnBh dXNlZCBmb3IgdGhlIGZpcnN0IHRpbWUgYnkgdGhlIHN5c3RlbWNvbnRyb2xsZXIuCisgICAgICov CisgICAgYm9vbCBjcmVhdGlvbl9maW5pc2hlZDsKKwogICAgIC8qIFdoaWNoIGd1ZXN0IHRoaXMg Z3Vlc3QgaGFzIHByaXZpbGVnZXMgb24gKi8KICAgICBzdHJ1Y3QgZG9tYWluICAgKnRhcmdldDsK IAotLSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBz Oi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK