From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH 1/2] x86/SVM-IOMMU: Don't opencode memcpy() in queue_iommu_command() Date: Mon, 24 Sep 2018 06:16:16 -0600 Message-ID: <5BA8D59002000078001EB203@prv1-mh.provo.novell.com> References: <1537786530-4625-1-git-send-email-andrew.cooper3@citrix.com> <930ae0cb767d46898ea4a9acdb95c2be@AMSPEX02CL03.citrite.net> <83196ca8ba4740f891892a50f2aaeb9d@AMSPEX02CL03.citrite.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <83196ca8ba4740f891892a50f2aaeb9d@AMSPEX02CL03.citrite.net> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Paul Durrant Cc: Wei Liu , Andrew Cooper , Xen-devel , Suravee Suthikulpanit , Brian Woods , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDI0LjA5LjE4IGF0IDE0OjA5LCA8UGF1bC5EdXJyYW50QGNpdHJpeC5jb20+IHdyb3Rl Ogo+PiAgLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPj4gRnJvbTogQW5kcmV3IENvb3Blcgo+ PiBTZW50OiAyNCBTZXB0ZW1iZXIgMjAxOCAxMzowNgo+PiBUbzogUGF1bCBEdXJyYW50IDxQYXVs LkR1cnJhbnRAY2l0cml4LmNvbT47IFhlbi1kZXZlbCA8eGVuLQo+PiBkZXZlbEBsaXN0cy54ZW4u b3JnPgo+PiBDYzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPjsgV2VpIExpdSA8d2Vp LmxpdTJAY2l0cml4LmNvbT47IFJvZ2VyCj4+IFBhdSBNb25uZSA8cm9nZXIucGF1QGNpdHJpeC5j b20+OyBTdXJhdmVlIFN1dGhpa3VscGFuaXQKPj4gPHN1cmF2ZWUuc3V0aGlrdWxwYW5pdEBhbWQu Y29tPjsgQnJpYW4gV29vZHMgPGJyaWFuLndvb2RzQGFtZC5jb20+Cj4+IFN1YmplY3Q6IFJlOiBb UEFUQ0ggMS8yXSB4ODYvU1ZNLUlPTU1VOiBEb24ndCBvcGVuY29kZSBtZW1jcHkoKSBpbgo+PiBx dWV1ZV9pb21tdV9jb21tYW5kKCkKPj4gCj4+IE9uIDI0LzA5LzE4IDEyOjU5LCBQYXVsIER1cnJh bnQgd3JvdGU6Cj4+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+ID4+IEZyb206IEFu ZHJldyBDb29wZXIgW21haWx0bzphbmRyZXcuY29vcGVyM0BjaXRyaXguY29tXQo+PiA+PiBTZW50 OiAyNCBTZXB0ZW1iZXIgMjAxOCAxMTo1NQo+PiA+PiBUbzogWGVuLWRldmVsIDx4ZW4tZGV2ZWxA bGlzdHMueGVuLm9yZz4KPj4gPj4gQ2M6IEFuZHJldyBDb29wZXIgPEFuZHJldy5Db29wZXIzQGNp dHJpeC5jb20+OyBKYW4gQmV1bGljaAo+PiA+PiA8SkJldWxpY2hAc3VzZS5jb20+OyBXZWkgTGl1 IDx3ZWkubGl1MkBjaXRyaXguY29tPjsgUm9nZXIgUGF1IE1vbm5lCj4+ID4+IDxyb2dlci5wYXVA Y2l0cml4LmNvbT47IFBhdWwgRHVycmFudCA8UGF1bC5EdXJyYW50QGNpdHJpeC5jb20+OyBTdXJh dmVlCj4+ID4+IFN1dGhpa3VscGFuaXQgPHN1cmF2ZWUuc3V0aGlrdWxwYW5pdEBhbWQuY29tPjsg QnJpYW4gV29vZHMKPj4gPj4gPGJyaWFuLndvb2RzQGFtZC5jb20+Cj4+ID4+IFN1YmplY3Q6IFtQ QVRDSCAxLzJdIHg4Ni9TVk0tSU9NTVU6IERvbid0IG9wZW5jb2RlIG1lbWNweSgpIGluCj4+ID4+ IHF1ZXVlX2lvbW11X2NvbW1hbmQoKQo+PiA+Pgo+PiA+PiBJbiBwcmFjdGljZSwgdGhpcyBhbGxv d3MgdGhlIGNvbXBpbGVyIHRvIHJlcGxhY2UgdGhlIGxvb3Agd2l0aCBhIHBhaXIKPj4gb2YKPj4g Pj4gbW92cy4KPj4gPj4KPj4gPj4gTm8gZnVuY3Rpb25hbCBjaGFuZ2UuCj4+ID4gV2VsbCB0aGVy ZSBpcyBhIHBvdGVudGlhbCBmdW5jdGlvbmFsIGNoYW5nZS4uLgo+PiA+Cj4+ID4+IFNpZ25lZC1v ZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Cj4+ID4+IC0t LQo+PiA+PiBDQzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPgo+PiA+PiBDQzogV2Vp IExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KPj4gPj4gQ0M6IFJvZ2VyIFBhdSBNb25uw6kgPHJv Z2VyLnBhdUBjaXRyaXguY29tPgo+PiA+PiBDQzogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJhbnRA Y2l0cml4LmNvbT4KPj4gPj4gQ0M6IFN1cmF2ZWUgU3V0aGlrdWxwYW5pdCA8c3VyYXZlZS5zdXRo aWt1bHBhbml0QGFtZC5jb20+Cj4+ID4+IENDOiBCcmlhbiBXb29kcyA8YnJpYW4ud29vZHNAYW1k LmNvbT4KPj4gPj4gLS0tCj4+ID4+ICB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVf Y21kLmMgICAgICB8IDEyICsrKystLS0tLS0tLQo+PiA+PiAgeGVuL2luY2x1ZGUvYXNtLXg4Ni9o dm0vc3ZtL2FtZC1pb21tdS1kZWZzLmggfCAgMSAtCj4+ID4+ICAyIGZpbGVzIGNoYW5nZWQsIDQg aW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKPj4gPj4KPj4gPj4gZGlmZiAtLWdpdCBhL3hl bi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9jbWQuYwo+PiA+PiBiL3hlbi9kcml2ZXJz L3Bhc3N0aHJvdWdoL2FtZC9pb21tdV9jbWQuYwo+PiA+PiBpbmRleCAwODI0N2ZhLi5jNmMwYjRm IDEwMDY0NAo+PiA+PiAtLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hbWQvaW9tbXVfY21k LmMKPj4gPj4gKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYW1kL2lvbW11X2NtZC5jCj4+ ID4+IEBAIC0yNCw4ICsyNCw3IEBACj4+ID4+Cj4+ID4+ICBzdGF0aWMgaW50IHF1ZXVlX2lvbW11 X2NvbW1hbmQoc3RydWN0IGFtZF9pb21tdSAqaW9tbXUsIHUzMiBjbWRbXSkKPj4gPj4gIHsKPj4g Pj4gLSAgICB1MzIgdGFpbCwgaGVhZCwgKmNtZF9idWZmZXI7Cj4+ID4+IC0gICAgaW50IGk7Cj4+ ID4+ICsgICAgdWludDMyX3QgdGFpbCwgaGVhZDsKPj4gPj4KPj4gPj4gICAgICB0YWlsID0gaW9t bXUtPmNtZF9idWZmZXIudGFpbDsKPj4gPj4gICAgICBpZiAoICsrdGFpbCA9PSBpb21tdS0+Y21k X2J1ZmZlci5lbnRyaWVzICkKPj4gPj4gQEAgLTM1LDEyICszNCw5IEBAIHN0YXRpYyBpbnQgcXVl dWVfaW9tbXVfY29tbWFuZChzdHJ1Y3QgYW1kX2lvbW11Cj4+ICppb21tdSwKPj4gPj4gdTMyIGNt ZFtdKQo+PiA+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJT01NVV9D TURfQlVGRkVSX0hFQURfT0ZGU0VUKSk7Cj4+ID4+ICAgICAgaWYgKCBoZWFkICE9IHRhaWwgKQo+ PiA+PiAgICAgIHsKPj4gPj4gLSAgICAgICAgY21kX2J1ZmZlciA9ICh1MzIgKikoaW9tbXUtPmNt ZF9idWZmZXIuYnVmZmVyICsKPj4gPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlv bW11LT5jbWRfYnVmZmVyLnRhaWwgKgo+PiA+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJT01NVV9DTURfQlVGRkVSX0VOVFJZX1NJWkUpKTsKPj4gPj4gLQo+PiA+PiAtICAgICAgICBm b3IgKCBpID0gMDsgaSA8IElPTU1VX0NNRF9CVUZGRVJfVTMyX1BFUl9FTlRSWTsgaSsrICkKPj4g Pj4gLSAgICAgICAgICAgIGNtZF9idWZmZXJbaV0gPSBjbWRbaV07Cj4+ID4+ICsgICAgICAgIG1l bWNweShpb21tdS0+Y21kX2J1ZmZlci5idWZmZXIgKwo+PiA+PiArICAgICAgICAgICAgICAgKGlv bW11LT5jbWRfYnVmZmVyLnRhaWwgKiBJT01NVV9DTURfQlVGRkVSX0VOVFJZX1NJWkUpLAo+PiA+ PiArICAgICAgICAgICAgICAgY21kLCBJT01NVV9DTURfQlVGRkVSX0VOVFJZX1NJWkUpOwo+PiA+ IC4uLnNpbmNlIHRoZSBidWlsdC1pbiBtZW1jcHkgbWF5IG5vdCBndWFyYW50ZWUgdG8gdGhlIGNv cHkgaW4gNCBieXRlCj4+IGNodW5rcyBpbiBhc2NlbmRpbmcgb3JkZXIuCj4+IAo+PiAiTm8gZnVu Y3Rpb25hbCBjaGFuZ2UiICE9ICJUaGUgYmluYXJ5IGlzIGlkZW50aWNhbCIuCj4+IAo+PiBUaGUg ZnVuY3Rpb25hbGl0eSBvZiBxdWV1ZV9pb21tdV9jb21tYW5kKCkgZG9lcyBub3QgY2hhbmdlLCBl dmVuIGlmIGl0J3MKPj4gY29kZSBnZW5lcmF0aW9uIGRvZXMuICBJdCBpcyBqdXN0IGNvcHlpbmcg Ynl0ZXMgaW50byBhIHNoYXJlZCByaW5nLAo+PiBib3VuZGVkIGxhdGVyIGJ5IHVwZGF0aW5nIHRo ZSB0YWlsIHBvaW50ZXIuCj4gCj4gWWVzLCBteSBwb2ludCBpcyB0aGF0IHRoZSByaW5nIGlzIHNo YXJlZCBhbmQgc28gRE1BIGJ5IHRoZSBoL3cgbWF5IHJhY2UuIAo+IFRoaXMgaXMgY2xlYXJseSBu b3QgYSBnb29kIHNpdHVhdGlvbiBidXQgdGhlIGZhY3QgdGhhdCB0aGUgY29kZSBnZW5lcmF0aW9u IAo+IG1heSBjaGFuZ2UgbWF5IGhhdmUgc2lkZSBlZmZlY3RzLgoKQWxsIHdyaXRlcyB0byB0aGUg cmluZyBvY2N1ciBzdHJpY3RseSBiZWZvcmUgdGhlIHVwZGF0ZSBvZiB0aGUgdGFpbCBwb2ludGVy CihpbiBNTUlPKSwgbm8gbWF0dGVyIGhvdyB0aGUgY29weWluZyBnZXRzIGRvbmUuCgpKYW4KCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs