From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: [PATCH v9 8/8] VT-d: Add copy_irte_{to, from}_irt for updating irte Date: Mon, 27 Feb 2017 09:45:49 +0800 Message-ID: <1488159949-15011-9-git-send-email-chao.gao@intel.com> References: <1488159949-15011-1-git-send-email-chao.gao@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1488159949-15011-1-git-send-email-chao.gao@intel.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: Kevin Tian , Jun Nakajima , George Dunlap , Andrew Cooper , Dario Faggioli , Jan Beulich , Chao Gao List-Id: xen-devel@lists.xenproject.org V2UgdXNlZCBzdHJ1Y3R1cmUgYXNzaWdubWVudCB0byB1cGRhdGUgaXJ0ZSB3aGljaCB3YXMgbm90 IHNhZmUgd2hlbiBhCmludGVycnVwdCBoYXBwZW5kIGR1cmluZyB1cGRhdGUuIEl0IGlzIGJldHRl ciB0byB1cGRhdGUgSVJURSBhdG9taWNhbGx5CnRocm91Z2ggY21weGNoZzE2YigpLiBXaGVuIGNt cHhjaGcxNmIgaXMgbm90IHN1cHBvcnRlZCwgdHdvIDY0LWJpdCB3cml0ZQpvcGVyYXRpb24gY2Fu IGF0b21pY2FsbHkgdXBkYXRlIElSVEUgd2hlbiBvbmx5IG9uZSB0aGUgaGlnaCBkd29yZCBvcgps b3cgZHdvcmQgaXMgaW50ZW50ZWQgdG8gYmUgY2hhbmdlZC4KClNpZ25lZC1vZmYtYnk6IENoYW8g R2FvIDxjaGFvLmdhb0BpbnRlbC5jb20+Ci0tLQp2OToKLSBOZXdseSBhZGRlZC4KCiB4ZW4vZHJp dmVycy9wYXNzdGhyb3VnaC92dGQvaW50cmVtYXAuYyB8IDU4ICsrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCspLCAyNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQvaW50cmVt YXAuYyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pbnRyZW1hcC5jCmluZGV4IDczN2I4 ODYuLjY0OWJlYmQgMTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pbnRy ZW1hcC5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC9pbnRyZW1hcC5jCkBAIC0x NjksNiArMTY5LDM3IEBAIGJvb2xfdCBfX2luaXQgaW9tbXVfc3VwcG9ydHNfZWltKHZvaWQpCiAg ICAgcmV0dXJuIDE7CiB9CiAKK3N0YXRpYyBpbmxpbmUgdm9pZCBjb3B5X2lydGVfZnJvbV9pcnQo c3RydWN0IGlyZW1hcF9lbnRyeSAqZHN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzdHJ1Y3QgaXJlbWFwX2VudHJ5ICpzcmMpCit7CisgICAgKmRzdCA9ICpzcmM7Cit9 CisKK3N0YXRpYyB2b2lkIGNvcHlfaXJ0ZV90b19pcnQoc3RydWN0IGlyZW1hcF9lbnRyeSAqZHN0 LCBzdHJ1Y3QgaXJlbWFwX2VudHJ5ICpzcmMpCit7CisgICAgaWYgKCBjcHVfaGFzX2N4MTYgKQor ICAgIHsKKyAgICAgICAgX191aW50MTI4X3QgcmV0OworICAgICAgICBzdHJ1Y3QgaXJlbWFwX2Vu dHJ5IG9sZF9pcmU7CisKKyAgICAgICAgY29weV9pcnRlX2Zyb21faXJ0KCZvbGRfaXJlLCBkc3Qp OworICAgICAgICByZXQgPSBjbXB4Y2hnMTZiKGRzdCwgJm9sZF9pcmUsIHNyYyk7CisKKyAgICAg ICAgLyoKKyAgICAgICAgICogSW4gdGhlIGFib3ZlLCB3ZSB1c2UgY21weGNoZzE2IHRvIGF0b21p Y2FsbHkgdXBkYXRlIHRoZSAxMjgtYml0CisgICAgICAgICAqIElSVEUsIGFuZCB0aGUgaGFyZHdh cmUgY2Fubm90IHVwZGF0ZSB0aGUgSVJURSBiZWhpbmQgdXMsIHNvCisgICAgICAgICAqIHRoZSBy ZXR1cm4gdmFsdWUgb2YgY21weGNoZzE2IHNob3VsZCBiZSB0aGUgc2FtZSBhcyBvbGRfaXJlLgor ICAgICAgICAgKiBUaGlzIEFTU0VSVCB2YWxpZGF0ZSBpdC4KKyAgICAgICAgICovCisgICAgICAg IEFTU0VSVChyZXQgPT0gb2xkX2lyZS52YWwpOworICAgIH0KKyAgICBlbHNlCisgICAgeworICAg ICAgICBkc3QtPmxvID0gc3JjLT5sbzsKKyAgICAgICAgZHN0LT5oaSA9IHNyYy0+aGk7CisgICAg fQorfQorCiAvKiBNYXJrIHNwZWNpZmllZCBpbnRyIHJlbWFwIGVudHJ5IGFzIGZyZWUgKi8KIHN0 YXRpYyB2b2lkIGZyZWVfcmVtYXBfZW50cnkoc3RydWN0IGlvbW11ICppb21tdSwgaW50IGluZGV4 KQogewpAQCAtMzEwLDcgKzM0MSw3IEBAIHN0YXRpYyBpbnQgaW9hcGljX3J0ZV90b19yZW1hcF9l bnRyeShzdHJ1Y3QgaW9tbXUgKmlvbW11LAogICAgIEdFVF9JUkVNQVBfRU5UUlkoaXJfY3RybC0+ aXJlbWFwX21hZGRyLCBpbmRleCwKICAgICAgICAgICAgICAgICAgICAgIGlyZW1hcF9lbnRyaWVz LCBpcmVtYXBfZW50cnkpOwogCi0gICAgbmV3X2lyZSA9ICppcmVtYXBfZW50cnk7CisgICAgY29w eV9pcnRlX2Zyb21faXJ0KCZuZXdfaXJlLCBpcmVtYXBfZW50cnkpOwogCiAgICAgaWYgKCBydGVf dXBwZXIgKQogICAgIHsKQEAgLTM1Myw3ICszODQsNyBAQCBzdGF0aWMgaW50IGlvYXBpY19ydGVf dG9fcmVtYXBfZW50cnkoc3RydWN0IGlvbW11ICppb21tdSwKICAgICAgICAgcmVtYXBfcnRlLT5m b3JtYXQgPSAxOyAgICAvKiBpbmRpY2F0ZSByZW1hcCBmb3JtYXQgKi8KICAgICB9CiAKLSAgICAq aXJlbWFwX2VudHJ5ID0gbmV3X2lyZTsKKyAgICBjb3B5X2lydGVfdG9faXJ0KGlyZW1hcF9lbnRy eSwgJm5ld19pcmUpOwogICAgIGlvbW11X2ZsdXNoX2NhY2hlX2VudHJ5KGlyZW1hcF9lbnRyeSwg c2l6ZW9mKCppcmVtYXBfZW50cnkpKTsKICAgICBpb21tdV9mbHVzaF9pZWNfaW5kZXgoaW9tbXUs IDAsIGluZGV4KTsKIApAQCAtNjE3LDI4ICs2NDgsNyBAQCBzdGF0aWMgaW50IHVwZGF0ZV9pcnRl X2Zvcl9tc2lfY29tbW9uKAogCiAgICAgaWYgKCBpcmVtYXBfZW50cnktPnZhbCAhPSBuZXdfaXJl LnZhbCApCiAgICAgewotICAgICAgICBpZiAoIGNwdV9oYXNfY3gxNiApCi0gICAgICAgIHsKLSAg ICAgICAgICAgIF9fdWludDEyOF90IHJldDsKLSAgICAgICAgICAgIHN0cnVjdCBpcmVtYXBfZW50 cnkgb2xkX2lyZTsKLQotICAgICAgICAgICAgb2xkX2lyZSA9ICppcmVtYXBfZW50cnk7Ci0gICAg ICAgICAgICByZXQgPSBjbXB4Y2hnMTZiKGlyZW1hcF9lbnRyeSwgJm9sZF9pcmUsICZuZXdfaXJl KTsKLQotICAgICAgICAgICAgLyoKLSAgICAgICAgICAgICAqIEluIHRoZSBhYm92ZSwgd2UgdXNl IGNtcHhjaGcxNiB0byBhdG9taWNhbGx5IHVwZGF0ZSB0aGUgMTI4LWJpdAotICAgICAgICAgICAg ICogSVJURSwgYW5kIHRoZSBoYXJkd2FyZSBjYW5ub3QgdXBkYXRlIHRoZSBJUlRFIGJlaGluZCB1 cywgc28KLSAgICAgICAgICAgICAqIHRoZSByZXR1cm4gdmFsdWUgb2YgY21weGNoZzE2IHNob3Vs ZCBiZSB0aGUgc2FtZSBhcyBvbGRfaXJlLgotICAgICAgICAgICAgICogVGhpcyBBU1NFUlQgdmFs aWRhdGUgaXQuCi0gICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIEFTU0VSVChyZXQgPT0gb2xk X2lyZS52YWwpOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgewotICAgICAgICAg ICAgaXJlbWFwX2VudHJ5LT5sbyA9IG5ld19pcmUubG87Ci0gICAgICAgICAgICBpcmVtYXBfZW50 cnktPmhpID0gbmV3X2lyZS5oaTsKLSAgICAgICAgfQotCisgICAgICAgIGNvcHlfaXJ0ZV90b19p cnQoaXJlbWFwX2VudHJ5LCAmbmV3X2lyZSk7CiAgICAgICAgIGlvbW11X2ZsdXNoX2NhY2hlX2Vu dHJ5KGlyZW1hcF9lbnRyeSwgc2l6ZW9mKCppcmVtYXBfZW50cnkpKTsKICAgICAgICAgaW9tbXVf Zmx1c2hfaWVjX2luZGV4KGlvbW11LCAwLCBpbmRleCk7CiAgICAgfQotLSAKMS44LjMuMQoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=