From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: [PATCH V5 4/6] mdev: introduce virtio device and its device ops Date: Thu, 24 Oct 2019 14:44:49 -0600 Message-ID: <20191024144449.626d560b@x1.home> References: <20191023130752.18980-1-jasowang@redhat.com> <20191023130752.18980-5-jasowang@redhat.com> <20191023155728.2a55bc71@x1.home> <1699cc4e-7d52-b2dc-8016-358a36a4f4ea@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id AC5A86E7BE for ; Thu, 24 Oct 2019 20:45:15 +0000 (UTC) In-Reply-To: <1699cc4e-7d52-b2dc-8016-358a36a4f4ea@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jason Wang Cc: stefanha@redhat.com, christophe.de.dinechin@gmail.com, kvm@vger.kernel.org, mst@redhat.com, airlied@linux.ie, heiko.carstens@de.ibm.com, dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org, kwankhede@nvidia.com, rob.miller@broadcom.com, linux-s390@vger.kernel.org, sebott@linux.ibm.com, lulu@redhat.com, eperezma@redhat.com, pasic@linux.ibm.com, borntraeger@de.ibm.com, haotian.wang@sifive.com, cunming.liang@intel.com, farman@linux.ibm.com, idos@mellanox.com, gor@linux.ibm.com, intel-gfx@lists.freedesktop.org, xiao.w.wang@intel.com, freude@linux.ibm.com, parav@mellanox.com, zhihong.wang@intel.com, intel-gvt-dev@lists.freedesktop.org, akrowiak@linux.ibm.com, oberpar@linux.ibm.com, tiwei.bie@intel.com, netdev@vger.kernel.org, cohuck@redhat.com, linux-kernel@vger.kernel.org, maxime.coquelin@redhat.com, lingshan.zhu@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCAyNCBPY3QgMjAxOSAxMTo1MTozNSArMDgwMApKYXNvbiBXYW5nIDxqYXNvd2FuZ0By ZWRoYXQuY29tPiB3cm90ZToKCj4gT24gMjAxOS8xMC8yNCDkuIrljYg1OjU3LCBBbGV4IFdpbGxp YW1zb24gd3JvdGU6Cj4gPiBPbiBXZWQsIDIzIE9jdCAyMDE5IDIxOjA3OjUwICswODAwCj4gPiBK YXNvbiBXYW5nIDxqYXNvd2FuZ0ByZWRoYXQuY29tPiB3cm90ZToKPiA+ICAKPiA+PiBUaGlzIHBh dGNoIGltcGxlbWVudHMgYmFzaWMgc3VwcG9ydCBmb3IgbWRldiBkcml2ZXIgdGhhdCBzdXBwb3J0 cwo+ID4+IHZpcnRpbyB0cmFuc3BvcnQgZm9yIGtlcm5lbCB2aXJ0aW8gZHJpdmVyLgo+ID4+Cj4g Pj4gU2lnbmVkLW9mZi1ieTogSmFzb24gV2FuZyA8amFzb3dhbmdAcmVkaGF0LmNvbT4KPiA+PiAt LS0KPiA+PiAgIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfY29yZS5jICAgIHwgIDIwICsrKysKPiA+ PiAgIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oIHwgICAyICsKPiA+PiAgIGluY2x1 ZGUvbGludXgvbWRldi5oICAgICAgICAgICAgIHwgICA2ICsrCj4gPj4gICBpbmNsdWRlL2xpbnV4 L3ZpcnRpb19tZGV2X29wcy5oICB8IDE1OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Cj4gPj4gICA0IGZpbGVzIGNoYW5nZWQsIDE4NyBpbnNlcnRpb25zKCspCj4gPj4gICBjcmVhdGUg bW9kZSAxMDA2NDQgaW5jbHVkZS9saW51eC92aXJ0aW9fbWRldl9vcHMuaAo+ID4+Cj4gPj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvdmZpby9tZGV2L21kZXZfY29yZS5jIGIvZHJpdmVycy92ZmlvL21k ZXYvbWRldl9jb3JlLmMKPiA+PiBpbmRleCA1NTViZDYxZDhjMzguLjliMDBjMzUxMzEyMCAxMDA2 NDQKPiA+PiAtLS0gYS9kcml2ZXJzL3ZmaW8vbWRldi9tZGV2X2NvcmUuYwo+ID4+ICsrKyBiL2Ry aXZlcnMvdmZpby9tZGV2L21kZXZfY29yZS5jCj4gPj4gQEAgLTc2LDYgKzc2LDI2IEBAIGNvbnN0 IHN0cnVjdCB2ZmlvX21kZXZfZGV2aWNlX29wcyAqbWRldl9nZXRfdmZpb19vcHMoc3RydWN0IG1k ZXZfZGV2aWNlICptZGV2KQo+ID4+ICAgfQo+ID4+ICAgRVhQT1JUX1NZTUJPTChtZGV2X2dldF92 ZmlvX29wcyk7Cj4gPj4gICAKPiA+PiArLyogU3BlY2lmeSB0aGUgdmlydGlvIGRldmljZSBvcHMg Zm9yIHRoZSBtZGV2IGRldmljZSwgdGhpcwo+ID4+ICsgKiBtdXN0IGJlIGNhbGxlZCBkdXJpbmcg Y3JlYXRlKCkgY2FsbGJhY2sgZm9yIHZpcnRpbyBtZGV2IGRldmljZS4KPiA+PiArICovCj4gPj4g K3ZvaWQgbWRldl9zZXRfdmlydGlvX29wcyhzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsCj4gPj4g KwkJCSBjb25zdCBzdHJ1Y3QgdmlydGlvX21kZXZfZGV2aWNlX29wcyAqdmlydGlvX29wcykKPiA+ PiArewo+ID4+ICsJbWRldl9zZXRfY2xhc3MobWRldiwgTURFVl9DTEFTU19JRF9WSVJUSU8pOwo+ ID4+ICsJbWRldi0+dmlydGlvX29wcyA9IHZpcnRpb19vcHM7Cj4gPj4gK30KPiA+PiArRVhQT1JU X1NZTUJPTChtZGV2X3NldF92aXJ0aW9fb3BzKTsKPiA+PiArCj4gPj4gKy8qIEdldCB0aGUgdmly dGlvIGRldmljZSBvcHMgZm9yIHRoZSBtZGV2IGRldmljZS4gKi8KPiA+PiArY29uc3Qgc3RydWN0 IHZpcnRpb19tZGV2X2RldmljZV9vcHMgKgo+ID4+ICttZGV2X2dldF92aXJ0aW9fb3BzKHN0cnVj dCBtZGV2X2RldmljZSAqbWRldikKPiA+PiArewo+ID4+ICsJV0FSTl9PTihtZGV2LT5jbGFzc19p ZCAhPSBNREVWX0NMQVNTX0lEX1ZJUlRJTyk7Cj4gPj4gKwlyZXR1cm4gbWRldi0+dmlydGlvX29w czsKPiA+PiArfQo+ID4+ICtFWFBPUlRfU1lNQk9MKG1kZXZfZ2V0X3ZpcnRpb19vcHMpOwo+ID4+ ICsKPiA+PiAgIHN0cnVjdCBkZXZpY2UgKm1kZXZfZGV2KHN0cnVjdCBtZGV2X2RldmljZSAqbWRl dikKPiA+PiAgIHsKPiA+PiAgIAlyZXR1cm4gJm1kZXYtPmRldjsKPiA+PiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy92ZmlvL21kZXYvbWRldl9wcml2YXRlLmggYi9kcml2ZXJzL3ZmaW8vbWRldi9tZGV2 X3ByaXZhdGUuaAo+ID4+IGluZGV4IDA3NzA0MTBkZWQyYS4uN2I0Nzg5MGMzNGU3IDEwMDY0NAo+ ID4+IC0tLSBhL2RyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oCj4gPj4gKysrIGIvZHJp dmVycy92ZmlvL21kZXYvbWRldl9wcml2YXRlLmgKPiA+PiBAQCAtMTEsNiArMTEsNyBAQAo+ID4+ ICAgI2RlZmluZSBNREVWX1BSSVZBVEVfSAo+ID4+ICAgCj4gPj4gICAjaW5jbHVkZSA8bGludXgv dmZpb19tZGV2X29wcy5oPgo+ID4+ICsjaW5jbHVkZSA8bGludXgvdmlydGlvX21kZXZfb3BzLmg+ Cj4gPj4gICAKPiA+PiAgIGludCAgbWRldl9idXNfcmVnaXN0ZXIodm9pZCk7Cj4gPj4gICB2b2lk IG1kZXZfYnVzX3VucmVnaXN0ZXIodm9pZCk7Cj4gPj4gQEAgLTM4LDYgKzM5LDcgQEAgc3RydWN0 IG1kZXZfZGV2aWNlIHsKPiA+PiAgIAl1MTYgY2xhc3NfaWQ7Cj4gPj4gICAJdW5pb24gewo+ID4+ ICAgCQljb25zdCBzdHJ1Y3QgdmZpb19tZGV2X2RldmljZV9vcHMgKnZmaW9fb3BzOwo+ID4+ICsJ CWNvbnN0IHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2Vfb3BzICp2aXJ0aW9fb3BzOwo+ID4+ICAg CX07Cj4gPj4gICB9Owo+ID4+ICAgCj4gPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbWRl di5oIGIvaW5jbHVkZS9saW51eC9tZGV2LmgKPiA+PiBpbmRleCA0NjI1ZjFhMTEwMTQuLjliNjli MGJiZWJmZCAxMDA2NDQKPiA+PiAtLS0gYS9pbmNsdWRlL2xpbnV4L21kZXYuaAo+ID4+ICsrKyBi L2luY2x1ZGUvbGludXgvbWRldi5oCj4gPj4gQEAgLTE3LDYgKzE3LDcgQEAKPiA+PiAgIAo+ID4+ ICAgc3RydWN0IG1kZXZfZGV2aWNlOwo+ID4+ICAgc3RydWN0IHZmaW9fbWRldl9kZXZpY2Vfb3Bz Owo+ID4+ICtzdHJ1Y3QgdmlydGlvX21kZXZfZGV2aWNlX29wczsKPiA+PiAgIAo+ID4+ICAgLyoK PiA+PiAgICAqIENhbGxlZCBieSB0aGUgcGFyZW50IGRldmljZSBkcml2ZXIgdG8gc2V0IHRoZSBk ZXZpY2Ugd2hpY2ggcmVwcmVzZW50cwo+ID4+IEBAIC0xMTIsNiArMTEzLDEwIEBAIHZvaWQgbWRl dl9zZXRfY2xhc3Moc3RydWN0IG1kZXZfZGV2aWNlICptZGV2LCB1MTYgaWQpOwo+ID4+ICAgdm9p ZCBtZGV2X3NldF92ZmlvX29wcyhzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsCj4gPj4gICAJCSAg ICAgICBjb25zdCBzdHJ1Y3QgdmZpb19tZGV2X2RldmljZV9vcHMgKnZmaW9fb3BzKTsKPiA+PiAg IGNvbnN0IHN0cnVjdCB2ZmlvX21kZXZfZGV2aWNlX29wcyAqbWRldl9nZXRfdmZpb19vcHMoc3Ry dWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArdm9pZCBtZGV2X3NldF92aXJ0aW9fb3BzKHN0 cnVjdCBtZGV2X2RldmljZSAqbWRldiwKPiA+PiArCQkJIGNvbnN0IHN0cnVjdCB2aXJ0aW9fbWRl dl9kZXZpY2Vfb3BzICp2aXJ0aW9fb3BzKTsKPiA+PiArY29uc3Qgc3RydWN0IHZpcnRpb19tZGV2 X2RldmljZV9vcHMgKgo+ID4+ICttZGV2X2dldF92aXJ0aW9fb3BzKHN0cnVjdCBtZGV2X2Rldmlj ZSAqbWRldik7Cj4gPj4gICAKPiA+PiAgIGV4dGVybiBzdHJ1Y3QgYnVzX3R5cGUgbWRldl9idXNf dHlwZTsKPiA+PiAgIAo+ID4+IEBAIC0xMjcsNiArMTMyLDcgQEAgc3RydWN0IG1kZXZfZGV2aWNl ICptZGV2X2Zyb21fZGV2KHN0cnVjdCBkZXZpY2UgKmRldik7Cj4gPj4gICAKPiA+PiAgIGVudW0g ewo+ID4+ICAgCU1ERVZfQ0xBU1NfSURfVkZJTyA9IDEsCj4gPj4gKwlNREVWX0NMQVNTX0lEX1ZJ UlRJTyA9IDIsCj4gPj4gICAJLyogTmV3IGVudHJpZXMgbXVzdCBiZSBhZGRlZCBoZXJlICovCj4g Pj4gICB9Owo+ID4+ICAgCj4gPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvdmlydGlvX21k ZXZfb3BzLmggYi9pbmNsdWRlL2xpbnV4L3ZpcnRpb19tZGV2X29wcy5oCj4gPj4gbmV3IGZpbGUg bW9kZSAxMDA2NDQKPiA+PiBpbmRleCAwMDAwMDAwMDAwMDAuLmQ0MTdiNDFmMjg0NQo+ID4+IC0t LSAvZGV2L251bGwKPiA+PiArKysgYi9pbmNsdWRlL2xpbnV4L3ZpcnRpb19tZGV2X29wcy5oCj4g Pj4gQEAgLTAsMCArMSwxNTkgQEAKPiA+PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQ TC0yLjAtb25seSAqLwo+ID4+ICsvKgo+ID4+ICsgKiBWaXJ0aW8gbWVkaWF0ZWQgZGV2aWNlIGRy aXZlcgo+ID4+ICsgKgo+ID4+ICsgKiBDb3B5cmlnaHQgMjAxOSwgUmVkIEhhdCBDb3JwLgo+ID4+ ICsgKiAgICAgQXV0aG9yOiBKYXNvbiBXYW5nIDxqYXNvd2FuZ0ByZWRoYXQuY29tPgo+ID4+ICsg Ki8KPiA+PiArI2lmbmRlZiBfTElOVVhfVklSVElPX01ERVZfSAo+ID4+ICsjZGVmaW5lIF9MSU5V WF9WSVJUSU9fTURFVl9ICj4gPj4gKwo+ID4+ICsjaW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+ Cj4gPj4gKyNpbmNsdWRlIDxsaW51eC9tZGV2Lmg+Cj4gPj4gKyNpbmNsdWRlIDx1YXBpL2xpbnV4 L3Zob3N0Lmg+Cj4gPj4gKwo+ID4+ICsjZGVmaW5lIFZJUlRJT19NREVWX0RFVklDRV9BUElfU1RS SU5HCQkidmlydGlvLW1kZXYiCj4gPj4gKyNkZWZpbmUgVklSVElPX01ERVZfRl9WRVJTSU9OXzEg MHgxCj4gPj4gKwo+ID4+ICtzdHJ1Y3QgdmlydGlvX21kZXZfY2FsbGJhY2sgewo+ID4+ICsJaXJx cmV0dXJuX3QgKCpjYWxsYmFjaykodm9pZCAqZGF0YSk7Cj4gPj4gKwl2b2lkICpwcml2YXRlOwo+ ID4+ICt9Owo+ID4+ICsKPiA+PiArLyoqCj4gPj4gKyAqIHN0cnVjdCB2ZmlvX21kZXZfZGV2aWNl X29wcyAtIFN0cnVjdHVyZSB0byBiZSByZWdpc3RlcmVkIGZvciBlYWNoCj4gPj4gKyAqIG1kZXYg ZGV2aWNlIHRvIHJlZ2lzdGVyIHRoZSBkZXZpY2UgZm9yIHZpcnRpby92aG9zdCBkcml2ZXJzLgo+ ID4+ICsgKgo+ID4+ICsgKiBUaGUgZGV2aWNlIG9wcyB0aGF0IGlzIHN1cHBvcnRlZCBieSBWSVJU SU9fTURFVl9GX1ZFUlNJT05fMSwgdGhlCj4gPj4gKyAqIGNhbGxiYWNrcyBhcmUgbWFuZGF0b3J5 IHVubGVzcyBleHBsaWNpdHkgbWVudGlvbmVkLiAgCj4gPiBJZiB0aGUgdmVyc2lvbiBvZiB0aGUg Y2FsbGJhY2tzIGlzIHJldHVybmVkIGJ5IGEgY2FsbGJhY2sgd2l0aGluIHRoZQo+ID4gc3RydWN0 dXJlIGRlZmluZWQgYnkgdGhlIHZlcnNpb24uLi4gaXNuJ3QgdGhhdCBhIGJpdCBjaXJjdWxhcj8g IFRoaXMKPiA+IHNlZW1zIHJlZHVuZGFudCB0byBtZSB2ZXJzdXMgdGhlIGNsYXNzIGlkLiAgVGhl IGZhY3QgdGhhdCB0aGUgcGFyZW50Cj4gPiBkcml2ZXIgZGVmaW5lcyB0aGUgZGV2aWNlIGFzIE1E RVZfQ0xBU1NfSURfVklSVElPIHNob3VsZCB0ZWxsIHVzIHRoaXMKPiA+IGFscmVhZHkuICBJZiBp dCB3YXMgaW5jcmVtZW50ZWQsIHdlJ2QgbmVlZCBhbiBNREVWX0NMQVNTX0lEX1ZJUlRJT3YyLAo+ ID4gd2hpY2ggdGhlIHZpcnRpby1tZGV2IGJ1cyBkcml2ZXIgY291bGQgYWRkIHRvIGl0cyBpZCB0 YWJsZSBhbmQgaGFuZGxlCj4gPiBkaWZmZXJlbnRseS4gIAo+IAo+IAo+IE15IHVuZGVyc3RhbmRp bmcgaXMgdmVyc2lvbnMgYXJlIG9ubHkgYWxsb3dlZCB0byBpbmNyZWFzZSBtb25vdG9uaWNhbGx5 LCAKPiB0aGlzIHNlZW1zIGxlc3MgZmxleGlibGUgdGhhbiBmZWF0dXJlcy4gRS5nIHdlIGhhdmUg ZmVhdHVyZXMgQSwgQiwgQywgCj4gbWRldiBkZXZpY2UgY2FuIGNob29zZSB0byBzdXBwb3J0IG9u bHkgYSBzdWJzZXQuIEUuZyB3aGVuIG1kZXYgZGV2aWNlIAo+IGNhbiBzdXBwb3J0IGRpcnR5IHBh Z2UgbG9nZ2luZywgaXQgY2FuIGFkZCBhIG5ldyBmZWF0dXJlIGJpdCBmb3IgZHJpdmVyIAo+IHRv IGtub3cgdGhhdCBpdCBzdXBwb3J0IG5ldyBkZXZpY2Ugb3BzLiBNREVWX0NMQVNTX0lEX1ZJUlRJ T3YyIG1heSBvbmx5IAo+IGJlIHVzZWZ1bCB3aGVuIHdlIHdpbGwgaW52ZW50IGEgY29tcGxldGUg bmV3IEFQSS4KCkJ1dCB0aGlzIGludGVyZmFjZSByYXRoZXIgY29uZmxhdGVzIGZlYXR1cmVzIGFu ZCB2ZXJzaW9ucyBieSByZXR1cm5pbmcKYSB2ZXJzaW9uIGFzIGEgZmVhdHVyZS4gIElmIHdlIHNp bXBseSB3YW50IHRvIHNheSB0aGF0IHRoZXJlIGFyZSBubwphZGRpdGlvbmFsIGZlYXR1cmVzLCB0 aGVuIGdldF9tZGV2X2ZlYXR1cmVzKCkgc2hvdWxkIHJldHVybiBhbiBlbXB0eQpzZXQuICBJZiBk aXJ0eSBwYWdlIGxvZ2dpbmcgaXMgYSBmZWF0dXJlLCB0aGVuIEknZCBleHBlY3QgYSBiaXQgaW4g dGhlCmdldF9tZGV2X2ZlYXR1cmVzKCkgcmV0dXJuIHZhbHVlIHRvIGlkZW50aWZ5IHRoYXQgZmVh dHVyZS4KCkhvd2V2ZXIsIEkndmUgYmVlbiB1bmRlciB0aGUgaW1wcmVzc2lvbiAocGVyaGFwcyB3 cm9uZ2x5KSB0aGF0IHRoZQpjbGFzcy1pZCBoYXMgYSAxOjEgY29ycmVsYXRpb24gdG8gdGhlIGRl dmljZS1vcHMgZXhwb3NlZCB0byB0aGUgYnVzCmRyaXZlciwgc28gaWYgZGlydHkgcGFnZSBsb2dn aW5nIHJlcXVpcmVzIGV4dHJhIGNhbGxiYWNrcywgdGhhdCB3b3VsZAppbXBseSBhIG5ldyBkZXZp Y2Utb3BzLCB3aGljaCByZXF1aXJlcyBhIG5ldyBjbGFzcy1pZC4gIEluIHRoYXQgY2FzZQp2aXJ0 aW8tbWRldiB3b3VsZCBjbGFpbSBib3RoIGNsYXNzLWlkcyBhbmQgd291bGQgbmVlZCBzb21lIHdh eSB0bwpkaWZmZXJlbnRpYXRlIHRoZW0uICBCdXQgSSBhbHNvIHNlZSB0aGF0IHN1Y2ggYSBzb2x1 dGlvbiBjYW4gYmVjb21lCnVubWFuYWdlYWJsZSBhcyB0aGUgc2V0IG9mIGNsYXNzLWlkcyB3b3Vs ZCBuZWVkIHRvIGVuY29tcGFzcyBldmVyeQpjb21iaW5hdGlvbiBvZiBmZWF0dXJlcy4KClNvIEkg dGhpbmsgd2hhdCdzIHN1Z2dlc3RlZCBieSB0aGlzIGlzIHRoYXQgdGhlIGluaXRpYWwgc3RydWN0 CnZpcnRpb19tZGV2X2RldmljZV9vcHMgaXMgYSBiYXNlIHNldCBvZiBjYWxsYmFja3Mgd2hpY2gg d291bGQgYmUKZXh0ZW5kZWQgdmlhIGZlYXR1cmVzPyAgQnV0IHRoZW4gd2h5IGRvZXMgZ2V0X2dl bmVyYXRpb24oKSBub3QgbWFrZSB1c2UKb2YgdGhpcz8gIEFuZCBpZiB3ZSBjYW4gZGVmaW5lIGdl dF9nZW5lcmF0aW9uKCkgYXMgb3B0aW9uYWwgYW5kIHNpbXBseQp0ZXN0IGlmIGl0J3MgaW1wbGVt ZW50ZWQsIHRoZW4gaXQgc2VlbXMgd2UgZG9uJ3QgbmVlZCBhbnkgZmVhdHVyZSBiaXRzCnRvIGV4 dGVuZCB0aGUgc3RydWN0dXJlICh1bmxlc3Mgd2UncmUgbG9va2luZyBhdCBiaW5hcnkgY29tcGF0 aWJpbGl0eSkuClNvIG1heWJlIGdldF9tZGV2X2ZlYXR1cmVzKCkgaXMgbWVhbnQgdG8gZXhwb3Nl IHVuZGVybHlpbmcgZmVhdHVyZXMKdW5yZWxhdGVkIHRvIHRoZSBjYWxsYmFja3M/ICBXaGljaCBp cyBub3QgaW4gbGluZSB3aXRoIHRoZSBkZXNjcmlwdGlvbj8KSG9wZWZ1bGx5IHlvdSBjYW4gc2Vl IG15IGNvbmZ1c2lvbiBpbiB3aGF0IHdlJ3JlIHRyeWluZyB0byBkbyBoZXJlLgpUaGFua3MsCgpB bGV4Cgo+ID4+ICsgKgo+ID4+ICsgKiBAc2V0X3ZxX2FkZHJlc3M6CQlTZXQgdGhlIGFkZHJlc3Mg b2YgdmlydHF1ZXVlCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJ CQkJQGlkeDogdmlydHF1ZXVlIGluZGV4Cj4gPj4gKyAqCQkJCUBkZXNjX2FyZWE6IGFkZHJlc3Mg b2YgZGVzYyBhcmVhCj4gPj4gKyAqCQkJCUBkcml2ZXJfYXJlYTogYWRkcmVzcyBvZiBkcml2ZXIg YXJlYQo+ID4+ICsgKgkJCQlAZGV2aWNlX2FyZWE6IGFkZHJlc3Mgb2YgZGV2aWNlIGFyZWEKPiA+ PiArICoJCQkJUmV0dXJucyBpbnRlZ2VyOiBzdWNjZXNzICgwKSBvciBlcnJvciAoPCAwKQo+ID4+ ICsgKiBAc2V0X3ZxX251bToJCQlTZXQgdGhlIHNpemUgb2YgdmlydHF1ZXVlCj4gPj4gKyAqCQkJ CUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJQGlkeDogdmlydHF1ZXVlIGluZGV4 Cj4gPj4gKyAqCQkJCUBudW06IHRoZSBzaXplIG9mIHZpcnRxdWV1ZQo+ID4+ICsgKiBAa2lja192 cToJCQlLaWNrIHRoZSB2aXJ0cXVldWUKPiA+PiArICoJCQkJQG1kZXY6IG1lZGlhdGVkIGRldmlj ZQo+ID4+ICsgKgkJCQlAaWR4OiB2aXJ0cXVldWUgaW5kZXgKPiA+PiArICogQHNldF92cV9jYjoJ CQlTZXQgdGhlIGludGVycnVwdCBjYWxsYmFjayBmdW5jdGlvbiBmb3IKPiA+PiArICoJCQkJYSB2 aXJ0cXVldWUKPiA+PiArICoJCQkJQG1kZXY6IG1lZGlhdGVkIGRldmljZQo+ID4+ICsgKgkJCQlA aWR4OiB2aXJ0cXVldWUgaW5kZXgKPiA+PiArICoJCQkJQGNiOiB2aXJ0aW8tbWRldiBpbnRlcnJ1 cHQgY2FsbGJhY2sgc3RydWN0dXJlCj4gPj4gKyAqIEBzZXRfdnFfcmVhZHk6CQlTZXQgcmVhZHkg c3RhdHVzIGZvciBhIHZpcnRxdWV1ZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNl Cj4gPj4gKyAqCQkJCUBpZHg6IHZpcnRxdWV1ZSBpbmRleAo+ID4+ICsgKgkJCQlAcmVhZHk6IHJl YWR5ICh0cnVlKSBub3QgcmVhZHkoZmFsc2UpCj4gPj4gKyAqIEBnZXRfdnFfcmVhZHk6CQlHZXQg cmVhZHkgc3RhdHVzIGZvciBhIHZpcnRxdWV1ZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQg ZGV2aWNlCj4gPj4gKyAqCQkJCUBpZHg6IHZpcnRxdWV1ZSBpbmRleAo+ID4+ICsgKgkJCQlSZXR1 cm5zIGJvb2xlYW46IHJlYWR5ICh0cnVlKSBvciBub3QgKGZhbHNlKQo+ID4+ICsgKiBAc2V0X3Zx X3N0YXRlOgkJU2V0IHRoZSBzdGF0ZSBmb3IgYSB2aXJ0cXVldWUKPiA+PiArICoJCQkJQG1kZXY6 IG1lZGlhdGVkIGRldmljZQo+ID4+ICsgKgkJCQlAaWR4OiB2aXJ0cXVldWUgaW5kZXgKPiA+PiAr ICoJCQkJQHN0YXRlOiB2aXJ0cXVldWUgc3RhdGUgKGxhc3RfYXZhaWxfaWR4KQo+ID4+ICsgKgkJ CQlSZXR1cm5zIGludGVnZXI6IHN1Y2Nlc3MgKDApIG9yIGVycm9yICg8IDApCj4gPj4gKyAqIEBn ZXRfdnFfc3RhdGU6CQlHZXQgdGhlIHN0YXRlIGZvciBhIHZpcnRxdWV1ZQo+ID4+ICsgKgkJCQlA bWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCUBpZHg6IHZpcnRxdWV1ZSBpbmRleAo+ ID4+ICsgKgkJCQlSZXR1cm5zIHZpcnRxdWV1ZSBzdGF0ZSAobGFzdF9hdmFpbF9pZHgpCj4gPj4g KyAqIEBnZXRfdnFfYWxpZ246CQlHZXQgdGhlIHZpcnRxdWV1ZSBhbGlnbiByZXF1aXJlbWVudAo+ ID4+ICsgKgkJCQlmb3IgdGhlIGRldmljZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2 aWNlCj4gPj4gKyAqCQkJCVJldHVybnMgdmlydHF1ZXVlIGFsZ2luIHJlcXVpcmVtZW50Cj4gPj4g KyAqIEBnZXRfZmVhdHVyZXM6CQlHZXQgdmlydGlvIGZlYXR1cmVzIHN1cHBvcnRlZCBieSB0aGUg ZGV2aWNlCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJUmV0 dXJucyB0aGUgdmlydGlvIGZlYXR1cmVzIHN1cHBvcnQgYnkgdGhlCj4gPj4gKyAqCQkJCWRldmlj ZQo+ID4+ICsgKiBAZ2V0X2ZlYXR1cmVzOgkJU2V0IHZpcnRpbyBmZWF0dXJlcyBzdXBwb3J0ZWQg YnkgdGhlIGRyaXZlciAgCj4gPiAgICAgICAgIF4gcy9nL3MvCj4gPgo+ID4gVGhhbmtzLAo+ID4g QWxleCAgCj4gCj4gCj4gV2lsbCBmaXguCj4gCj4gVGhhbmtzCj4gCj4gCj4gPiAgCj4gPj4gKyAq CQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJQGZlYXR1cmVzOiBmZWF0dXJl IHN1cHBvcnQgYnkgdGhlIGRyaXZlcgo+ID4+ICsgKgkJCQlSZXR1cm5zIGludGVnZXI6IHN1Y2Nl c3MgKDApIG9yIGVycm9yICg8IDApCj4gPj4gKyAqIEBzZXRfY29uZmlnX2NiOgkJU2V0IHRoZSBj b25maWcgaW50ZXJydXB0IGNhbGxiYWNrCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZp Y2UKPiA+PiArICoJCQkJQGNiOiB2aXJ0aW8tbWRldiBpbnRlcnJ1cHQgY2FsbGJhY2sgc3RydWN0 dXJlCj4gPj4gKyAqIEBnZXRfdnFfbnVtX21heDoJCUdldCB0aGUgbWF4IHNpemUgb2YgdmlydHF1 ZXVlCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJUmV0dXJu cyB1MTY6IG1heCBzaXplIG9mIHZpcnRxdWV1ZQo+ID4+ICsgKiBAZ2V0X2RldmljZV9pZDoJCUdl dCB2aXJ0aW8gZGV2aWNlIGlkCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+ PiArICoJCQkJUmV0dXJucyB1MzI6IHZpcnRpbyBkZXZpY2UgaWQKPiA+PiArICogQGdldF92ZW5k b3JfaWQ6CQlHZXQgaWQgZm9yIHRoZSB2ZW5kb3IgdGhhdCBwcm92aWRlcyB0aGlzIGRldmljZQo+ ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCVJldHVybnMgdTMy OiB2aXJ0aW8gdmVuZG9yIGlkCj4gPj4gKyAqIEBnZXRfc3RhdHVzOgkJCUdldCB0aGUgZGV2aWNl IHN0YXR1cwo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCVJl dHVybnMgdTg6IHZpcnRpbyBkZXZpY2Ugc3RhdHVzCj4gPj4gKyAqIEBzZXRfc3RhdHVzOgkJCVNl dCB0aGUgZGV2aWNlIHN0YXR1cwo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4g Pj4gKyAqCQkJCUBzdGF0dXM6IHZpcnRpbyBkZXZpY2Ugc3RhdHVzCj4gPj4gKyAqIEBnZXRfY29u ZmlnOgkJCVJlYWQgZnJvbSBkZXZpY2Ugc3BlY2lmaWMgY29uZmlndXJhdGlvbiBzcGFjZQo+ID4+ ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCUBvZmZzZXQ6IG9mZnNl dCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YKPiA+PiArICoJCQkJY29uZmlndXJhdGlvbiBzcGFjZQo+ ID4+ICsgKgkJCQlAYnVmOiBidWZmZXIgdXNlZCB0byByZWFkIHRvCj4gPj4gKyAqCQkJCUBsZW46 IHRoZSBsZW5ndGggdG8gcmVhZCBmcm9tCj4gPj4gKyAqCQkJCWNvbmZpZ3JhdGlvbiBzcGFjZQo+ ID4+ICsgKiBAc2V0X2NvbmZpZzoJCQlXcml0ZSB0byBkZXZpY2Ugc3BlY2lmaWMgY29uZmlndXJh dGlvbiBzcGFjZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJ CUBvZmZzZXQ6IG9mZnNldCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YKPiA+PiArICoJCQkJY29uZmln dXJhdGlvbiBzcGFjZQo+ID4+ICsgKgkJCQlAYnVmOiBidWZmZXIgdXNlZCB0byB3cml0ZSBmcm9t Cj4gPj4gKyAqCQkJCUBsZW46IHRoZSBsZW5ndGggdG8gd3JpdGUgdG8KPiA+PiArICoJCQkJY29u ZmlncmF0aW9uIHNwYWNlCj4gPj4gKyAqIEBnZXRfbWRldl9mZWF0dXJlczoJCUdldCBhIHNldCBv ZiBiaXRzIHRoYXQgZGVtb25zdHJhdGUKPiA+PiArICoJCQkJdGhlY2FwYWJpbGl0eSBvZiB0aGUg bWRldiBkZXZpY2UuIE5ldwo+ID4+ICsgKgkJCQlmZWF0dXJlcyBiaXRzIG11c3QgYmUgYWRkZWQg d2hlbgo+ID4+ICsgKgkJCQlpbnRyb2R1Y2luZyBuZXcgZGV2aWNlIG9wcy4KPiA+PiArICoJCQkJ QG1kZXY6IG1lZGlhdGVkIGRldmljZQo+ID4+ICsgKgkJCQlSZXR1cm5zIHRoZSBtZGV2IGZlYXR1 cmVzIChBUEkpIHN1cHBvcnQgYnkKPiA+PiArICoJCQkJdGhlIGRldmljZS4KPiA+PiArICogQGdl dF9nZW5lcmF0aW9uOgkJR2V0IGRldmljZSBjb25maWcgZ2VuZXJhdG9uIChvcHRpb25hbGx5KQo+ ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCVJldHVybnMgdTMy OiBkZXZpY2UgZ2VuZXJhdGlvbgo+ID4+ICsgKi8KPiA+PiArc3RydWN0IHZpcnRpb19tZGV2X2Rl dmljZV9vcHMgewo+ID4+ICsJLyogVmlydHF1ZXVlIG9wcyAqLwo+ID4+ICsJaW50ICgqc2V0X3Zx X2FkZHJlc3MpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwKPiA+PiArCQkJICAgICAgdTE2IGlk eCwgdTY0IGRlc2NfYXJlYSwgdTY0IGRyaXZlcl9hcmVhLAo+ID4+ICsJCQkgICAgICB1NjQgZGV2 aWNlX2FyZWEpOwo+ID4+ICsJdm9pZCAoKnNldF92cV9udW0pKHN0cnVjdCBtZGV2X2RldmljZSAq bWRldiwgdTE2IGlkeCwgdTMyIG51bSk7Cj4gPj4gKwl2b2lkICgqa2lja192cSkoc3RydWN0IG1k ZXZfZGV2aWNlICptZGV2LCB1MTYgaWR4KTsKPiA+PiArCXZvaWQgKCpzZXRfdnFfY2IpKHN0cnVj dCBtZGV2X2RldmljZSAqbWRldiwgdTE2IGlkeCwKPiA+PiArCQkJICBzdHJ1Y3QgdmlydGlvX21k ZXZfY2FsbGJhY2sgKmNiKTsKPiA+PiArCXZvaWQgKCpzZXRfdnFfcmVhZHkpKHN0cnVjdCBtZGV2 X2RldmljZSAqbWRldiwgdTE2IGlkeCwgYm9vbCByZWFkeSk7Cj4gPj4gKwlib29sICgqZ2V0X3Zx X3JlYWR5KShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsIHUxNiBpZHgpOwo+ID4+ICsJaW50ICgq c2V0X3ZxX3N0YXRlKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsIHUxNiBpZHgsIHU2NCBzdGF0 ZSk7Cj4gPj4gKwl1NjQgKCpnZXRfdnFfc3RhdGUpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwg dTE2IGlkeCk7Cj4gPj4gKwo+ID4+ICsJLyogVmlydGlvIGRldmljZSBvcHMgKi8KPiA+PiArCXUx NiAoKmdldF92cV9hbGlnbikoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArCXU2NCAo KmdldF9mZWF0dXJlcykoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArCWludCAoKnNl dF9mZWF0dXJlcykoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2LCB1NjQgZmVhdHVyZXMpOwo+ID4+ ICsJdm9pZCAoKnNldF9jb25maWdfY2IpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwKPiA+PiAr CQkJICAgICAgc3RydWN0IHZpcnRpb19tZGV2X2NhbGxiYWNrICpjYik7Cj4gPj4gKwl1MTYgKCpn ZXRfdnFfbnVtX21heCkoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArCXUzMiAoKmdl dF9kZXZpY2VfaWQpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldik7Cj4gPj4gKwl1MzIgKCpnZXRf dmVuZG9yX2lkKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYpOwo+ID4+ICsJdTggKCpnZXRfc3Rh dHVzKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYpOwo+ID4+ICsJdm9pZCAoKnNldF9zdGF0dXMp KHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwgdTggc3RhdHVzKTsKPiA+PiArCXZvaWQgKCpnZXRf Y29uZmlnKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsIHVuc2lnbmVkIGludCBvZmZzZXQsCj4g Pj4gKwkJCSAgIHZvaWQgKmJ1ZiwgdW5zaWduZWQgaW50IGxlbik7Cj4gPj4gKwl2b2lkICgqc2V0 X2NvbmZpZykoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2LCB1bnNpZ25lZCBpbnQgb2Zmc2V0LAo+ ID4+ICsJCQkgICBjb25zdCB2b2lkICpidWYsIHVuc2lnbmVkIGludCBsZW4pOwo+ID4+ICsJdTMy ICgqZ2V0X2dlbmVyYXRpb24pKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldik7Cj4gPj4gKwo+ID4+ ICsJLyogTWRldiBkZXZpY2Ugb3BzICovCj4gPj4gKwl1NjQgKCpnZXRfbWRldl9mZWF0dXJlcyko c3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArfTsKPiA+PiArCj4gPj4gK3ZvaWQgbWRl dl9zZXRfdmlydGlvX29wcyhzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsCj4gPj4gKwkJCSBjb25z dCBzdHJ1Y3QgdmlydGlvX21kZXZfZGV2aWNlX29wcyAqdmlydGlvX29wcyk7Cj4gPj4gKwo+ID4+ ICsjZW5kaWYgIAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8A7E4CA9EAF for ; Thu, 24 Oct 2019 20:45:17 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6428A21BE5 for ; Thu, 24 Oct 2019 20:45:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6428A21BE5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 090656E7BE; Thu, 24 Oct 2019 20:45:17 +0000 (UTC) Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id AC5A86E7BE for ; Thu, 24 Oct 2019 20:45:15 +0000 (UTC) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-37-LzpfL4iNOI2yLhwp9gmunA-1; Thu, 24 Oct 2019 16:45:10 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8FDD380183E; Thu, 24 Oct 2019 20:45:03 +0000 (UTC) Received: from x1.home (ovpn-118-102.phx2.redhat.com [10.3.118.102]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4B772450A; Thu, 24 Oct 2019 20:44:49 +0000 (UTC) Date: Thu, 24 Oct 2019 14:44:49 -0600 From: Alex Williamson To: Jason Wang Message-ID: <20191024144449.626d560b@x1.home> In-Reply-To: <1699cc4e-7d52-b2dc-8016-358a36a4f4ea@redhat.com> References: <20191023130752.18980-1-jasowang@redhat.com> <20191023130752.18980-5-jasowang@redhat.com> <20191023155728.2a55bc71@x1.home> <1699cc4e-7d52-b2dc-8016-358a36a4f4ea@redhat.com> Organization: Red Hat MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-MC-Unique: LzpfL4iNOI2yLhwp9gmunA-1 X-Mimecast-Spam-Score: 0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1571949914; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=tlUtBQGPFCbSO3DAgySYHCEeKLN2ykrpQWRzm+59VSE=; b=ShEdiTIPwmzS3jSolunxKgWqViBKvYnAlmIXxBXw82Uo1ybXNGoFg1zpvu0FpPgTpnvBtW ykMb5BDl92c7TOV3+wqOymVSnI9N0ivXrVXklosrlKf8x9miUY0tt8H/n1pysfYkF//56J LJD4AgnDsdqxD0UvQjdC6QF3SIAgGvo= Subject: Re: [Intel-gfx] [PATCH V5 4/6] mdev: introduce virtio device and its device ops X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: stefanha@redhat.com, christophe.de.dinechin@gmail.com, kvm@vger.kernel.org, mst@redhat.com, airlied@linux.ie, heiko.carstens@de.ibm.com, dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org, kwankhede@nvidia.com, rob.miller@broadcom.com, linux-s390@vger.kernel.org, sebott@linux.ibm.com, lulu@redhat.com, eperezma@redhat.com, pasic@linux.ibm.com, borntraeger@de.ibm.com, haotian.wang@sifive.com, cunming.liang@intel.com, farman@linux.ibm.com, idos@mellanox.com, gor@linux.ibm.com, intel-gfx@lists.freedesktop.org, xiao.w.wang@intel.com, freude@linux.ibm.com, parav@mellanox.com, zhihong.wang@intel.com, intel-gvt-dev@lists.freedesktop.org, akrowiak@linux.ibm.com, oberpar@linux.ibm.com, tiwei.bie@intel.com, netdev@vger.kernel.org, cohuck@redhat.com, linux-kernel@vger.kernel.org, maxime.coquelin@redhat.com, lingshan.zhu@intel.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191024204449.UH4eFQv0qSAIJLyvGm6sojz1_hx91E8SJuVNga96eTw@z> T24gVGh1LCAyNCBPY3QgMjAxOSAxMTo1MTozNSArMDgwMApKYXNvbiBXYW5nIDxqYXNvd2FuZ0By ZWRoYXQuY29tPiB3cm90ZToKCj4gT24gMjAxOS8xMC8yNCDkuIrljYg1OjU3LCBBbGV4IFdpbGxp YW1zb24gd3JvdGU6Cj4gPiBPbiBXZWQsIDIzIE9jdCAyMDE5IDIxOjA3OjUwICswODAwCj4gPiBK YXNvbiBXYW5nIDxqYXNvd2FuZ0ByZWRoYXQuY29tPiB3cm90ZToKPiA+ICAKPiA+PiBUaGlzIHBh dGNoIGltcGxlbWVudHMgYmFzaWMgc3VwcG9ydCBmb3IgbWRldiBkcml2ZXIgdGhhdCBzdXBwb3J0 cwo+ID4+IHZpcnRpbyB0cmFuc3BvcnQgZm9yIGtlcm5lbCB2aXJ0aW8gZHJpdmVyLgo+ID4+Cj4g Pj4gU2lnbmVkLW9mZi1ieTogSmFzb24gV2FuZyA8amFzb3dhbmdAcmVkaGF0LmNvbT4KPiA+PiAt LS0KPiA+PiAgIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfY29yZS5jICAgIHwgIDIwICsrKysKPiA+ PiAgIGRyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oIHwgICAyICsKPiA+PiAgIGluY2x1 ZGUvbGludXgvbWRldi5oICAgICAgICAgICAgIHwgICA2ICsrCj4gPj4gICBpbmNsdWRlL2xpbnV4 L3ZpcnRpb19tZGV2X29wcy5oICB8IDE1OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Cj4gPj4gICA0IGZpbGVzIGNoYW5nZWQsIDE4NyBpbnNlcnRpb25zKCspCj4gPj4gICBjcmVhdGUg bW9kZSAxMDA2NDQgaW5jbHVkZS9saW51eC92aXJ0aW9fbWRldl9vcHMuaAo+ID4+Cj4gPj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvdmZpby9tZGV2L21kZXZfY29yZS5jIGIvZHJpdmVycy92ZmlvL21k ZXYvbWRldl9jb3JlLmMKPiA+PiBpbmRleCA1NTViZDYxZDhjMzguLjliMDBjMzUxMzEyMCAxMDA2 NDQKPiA+PiAtLS0gYS9kcml2ZXJzL3ZmaW8vbWRldi9tZGV2X2NvcmUuYwo+ID4+ICsrKyBiL2Ry aXZlcnMvdmZpby9tZGV2L21kZXZfY29yZS5jCj4gPj4gQEAgLTc2LDYgKzc2LDI2IEBAIGNvbnN0 IHN0cnVjdCB2ZmlvX21kZXZfZGV2aWNlX29wcyAqbWRldl9nZXRfdmZpb19vcHMoc3RydWN0IG1k ZXZfZGV2aWNlICptZGV2KQo+ID4+ICAgfQo+ID4+ICAgRVhQT1JUX1NZTUJPTChtZGV2X2dldF92 ZmlvX29wcyk7Cj4gPj4gICAKPiA+PiArLyogU3BlY2lmeSB0aGUgdmlydGlvIGRldmljZSBvcHMg Zm9yIHRoZSBtZGV2IGRldmljZSwgdGhpcwo+ID4+ICsgKiBtdXN0IGJlIGNhbGxlZCBkdXJpbmcg Y3JlYXRlKCkgY2FsbGJhY2sgZm9yIHZpcnRpbyBtZGV2IGRldmljZS4KPiA+PiArICovCj4gPj4g K3ZvaWQgbWRldl9zZXRfdmlydGlvX29wcyhzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsCj4gPj4g KwkJCSBjb25zdCBzdHJ1Y3QgdmlydGlvX21kZXZfZGV2aWNlX29wcyAqdmlydGlvX29wcykKPiA+ PiArewo+ID4+ICsJbWRldl9zZXRfY2xhc3MobWRldiwgTURFVl9DTEFTU19JRF9WSVJUSU8pOwo+ ID4+ICsJbWRldi0+dmlydGlvX29wcyA9IHZpcnRpb19vcHM7Cj4gPj4gK30KPiA+PiArRVhQT1JU X1NZTUJPTChtZGV2X3NldF92aXJ0aW9fb3BzKTsKPiA+PiArCj4gPj4gKy8qIEdldCB0aGUgdmly dGlvIGRldmljZSBvcHMgZm9yIHRoZSBtZGV2IGRldmljZS4gKi8KPiA+PiArY29uc3Qgc3RydWN0 IHZpcnRpb19tZGV2X2RldmljZV9vcHMgKgo+ID4+ICttZGV2X2dldF92aXJ0aW9fb3BzKHN0cnVj dCBtZGV2X2RldmljZSAqbWRldikKPiA+PiArewo+ID4+ICsJV0FSTl9PTihtZGV2LT5jbGFzc19p ZCAhPSBNREVWX0NMQVNTX0lEX1ZJUlRJTyk7Cj4gPj4gKwlyZXR1cm4gbWRldi0+dmlydGlvX29w czsKPiA+PiArfQo+ID4+ICtFWFBPUlRfU1lNQk9MKG1kZXZfZ2V0X3ZpcnRpb19vcHMpOwo+ID4+ ICsKPiA+PiAgIHN0cnVjdCBkZXZpY2UgKm1kZXZfZGV2KHN0cnVjdCBtZGV2X2RldmljZSAqbWRl dikKPiA+PiAgIHsKPiA+PiAgIAlyZXR1cm4gJm1kZXYtPmRldjsKPiA+PiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy92ZmlvL21kZXYvbWRldl9wcml2YXRlLmggYi9kcml2ZXJzL3ZmaW8vbWRldi9tZGV2 X3ByaXZhdGUuaAo+ID4+IGluZGV4IDA3NzA0MTBkZWQyYS4uN2I0Nzg5MGMzNGU3IDEwMDY0NAo+ ID4+IC0tLSBhL2RyaXZlcnMvdmZpby9tZGV2L21kZXZfcHJpdmF0ZS5oCj4gPj4gKysrIGIvZHJp dmVycy92ZmlvL21kZXYvbWRldl9wcml2YXRlLmgKPiA+PiBAQCAtMTEsNiArMTEsNyBAQAo+ID4+ ICAgI2RlZmluZSBNREVWX1BSSVZBVEVfSAo+ID4+ICAgCj4gPj4gICAjaW5jbHVkZSA8bGludXgv dmZpb19tZGV2X29wcy5oPgo+ID4+ICsjaW5jbHVkZSA8bGludXgvdmlydGlvX21kZXZfb3BzLmg+ Cj4gPj4gICAKPiA+PiAgIGludCAgbWRldl9idXNfcmVnaXN0ZXIodm9pZCk7Cj4gPj4gICB2b2lk IG1kZXZfYnVzX3VucmVnaXN0ZXIodm9pZCk7Cj4gPj4gQEAgLTM4LDYgKzM5LDcgQEAgc3RydWN0 IG1kZXZfZGV2aWNlIHsKPiA+PiAgIAl1MTYgY2xhc3NfaWQ7Cj4gPj4gICAJdW5pb24gewo+ID4+ ICAgCQljb25zdCBzdHJ1Y3QgdmZpb19tZGV2X2RldmljZV9vcHMgKnZmaW9fb3BzOwo+ID4+ICsJ CWNvbnN0IHN0cnVjdCB2aXJ0aW9fbWRldl9kZXZpY2Vfb3BzICp2aXJ0aW9fb3BzOwo+ID4+ICAg CX07Cj4gPj4gICB9Owo+ID4+ICAgCj4gPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbWRl di5oIGIvaW5jbHVkZS9saW51eC9tZGV2LmgKPiA+PiBpbmRleCA0NjI1ZjFhMTEwMTQuLjliNjli MGJiZWJmZCAxMDA2NDQKPiA+PiAtLS0gYS9pbmNsdWRlL2xpbnV4L21kZXYuaAo+ID4+ICsrKyBi L2luY2x1ZGUvbGludXgvbWRldi5oCj4gPj4gQEAgLTE3LDYgKzE3LDcgQEAKPiA+PiAgIAo+ID4+ ICAgc3RydWN0IG1kZXZfZGV2aWNlOwo+ID4+ICAgc3RydWN0IHZmaW9fbWRldl9kZXZpY2Vfb3Bz Owo+ID4+ICtzdHJ1Y3QgdmlydGlvX21kZXZfZGV2aWNlX29wczsKPiA+PiAgIAo+ID4+ICAgLyoK PiA+PiAgICAqIENhbGxlZCBieSB0aGUgcGFyZW50IGRldmljZSBkcml2ZXIgdG8gc2V0IHRoZSBk ZXZpY2Ugd2hpY2ggcmVwcmVzZW50cwo+ID4+IEBAIC0xMTIsNiArMTEzLDEwIEBAIHZvaWQgbWRl dl9zZXRfY2xhc3Moc3RydWN0IG1kZXZfZGV2aWNlICptZGV2LCB1MTYgaWQpOwo+ID4+ICAgdm9p ZCBtZGV2X3NldF92ZmlvX29wcyhzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsCj4gPj4gICAJCSAg ICAgICBjb25zdCBzdHJ1Y3QgdmZpb19tZGV2X2RldmljZV9vcHMgKnZmaW9fb3BzKTsKPiA+PiAg IGNvbnN0IHN0cnVjdCB2ZmlvX21kZXZfZGV2aWNlX29wcyAqbWRldl9nZXRfdmZpb19vcHMoc3Ry dWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArdm9pZCBtZGV2X3NldF92aXJ0aW9fb3BzKHN0 cnVjdCBtZGV2X2RldmljZSAqbWRldiwKPiA+PiArCQkJIGNvbnN0IHN0cnVjdCB2aXJ0aW9fbWRl dl9kZXZpY2Vfb3BzICp2aXJ0aW9fb3BzKTsKPiA+PiArY29uc3Qgc3RydWN0IHZpcnRpb19tZGV2 X2RldmljZV9vcHMgKgo+ID4+ICttZGV2X2dldF92aXJ0aW9fb3BzKHN0cnVjdCBtZGV2X2Rldmlj ZSAqbWRldik7Cj4gPj4gICAKPiA+PiAgIGV4dGVybiBzdHJ1Y3QgYnVzX3R5cGUgbWRldl9idXNf dHlwZTsKPiA+PiAgIAo+ID4+IEBAIC0xMjcsNiArMTMyLDcgQEAgc3RydWN0IG1kZXZfZGV2aWNl ICptZGV2X2Zyb21fZGV2KHN0cnVjdCBkZXZpY2UgKmRldik7Cj4gPj4gICAKPiA+PiAgIGVudW0g ewo+ID4+ICAgCU1ERVZfQ0xBU1NfSURfVkZJTyA9IDEsCj4gPj4gKwlNREVWX0NMQVNTX0lEX1ZJ UlRJTyA9IDIsCj4gPj4gICAJLyogTmV3IGVudHJpZXMgbXVzdCBiZSBhZGRlZCBoZXJlICovCj4g Pj4gICB9Owo+ID4+ICAgCj4gPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvdmlydGlvX21k ZXZfb3BzLmggYi9pbmNsdWRlL2xpbnV4L3ZpcnRpb19tZGV2X29wcy5oCj4gPj4gbmV3IGZpbGUg bW9kZSAxMDA2NDQKPiA+PiBpbmRleCAwMDAwMDAwMDAwMDAuLmQ0MTdiNDFmMjg0NQo+ID4+IC0t LSAvZGV2L251bGwKPiA+PiArKysgYi9pbmNsdWRlL2xpbnV4L3ZpcnRpb19tZGV2X29wcy5oCj4g Pj4gQEAgLTAsMCArMSwxNTkgQEAKPiA+PiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQ TC0yLjAtb25seSAqLwo+ID4+ICsvKgo+ID4+ICsgKiBWaXJ0aW8gbWVkaWF0ZWQgZGV2aWNlIGRy aXZlcgo+ID4+ICsgKgo+ID4+ICsgKiBDb3B5cmlnaHQgMjAxOSwgUmVkIEhhdCBDb3JwLgo+ID4+ ICsgKiAgICAgQXV0aG9yOiBKYXNvbiBXYW5nIDxqYXNvd2FuZ0ByZWRoYXQuY29tPgo+ID4+ICsg Ki8KPiA+PiArI2lmbmRlZiBfTElOVVhfVklSVElPX01ERVZfSAo+ID4+ICsjZGVmaW5lIF9MSU5V WF9WSVJUSU9fTURFVl9ICj4gPj4gKwo+ID4+ICsjaW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+ Cj4gPj4gKyNpbmNsdWRlIDxsaW51eC9tZGV2Lmg+Cj4gPj4gKyNpbmNsdWRlIDx1YXBpL2xpbnV4 L3Zob3N0Lmg+Cj4gPj4gKwo+ID4+ICsjZGVmaW5lIFZJUlRJT19NREVWX0RFVklDRV9BUElfU1RS SU5HCQkidmlydGlvLW1kZXYiCj4gPj4gKyNkZWZpbmUgVklSVElPX01ERVZfRl9WRVJTSU9OXzEg MHgxCj4gPj4gKwo+ID4+ICtzdHJ1Y3QgdmlydGlvX21kZXZfY2FsbGJhY2sgewo+ID4+ICsJaXJx cmV0dXJuX3QgKCpjYWxsYmFjaykodm9pZCAqZGF0YSk7Cj4gPj4gKwl2b2lkICpwcml2YXRlOwo+ ID4+ICt9Owo+ID4+ICsKPiA+PiArLyoqCj4gPj4gKyAqIHN0cnVjdCB2ZmlvX21kZXZfZGV2aWNl X29wcyAtIFN0cnVjdHVyZSB0byBiZSByZWdpc3RlcmVkIGZvciBlYWNoCj4gPj4gKyAqIG1kZXYg ZGV2aWNlIHRvIHJlZ2lzdGVyIHRoZSBkZXZpY2UgZm9yIHZpcnRpby92aG9zdCBkcml2ZXJzLgo+ ID4+ICsgKgo+ID4+ICsgKiBUaGUgZGV2aWNlIG9wcyB0aGF0IGlzIHN1cHBvcnRlZCBieSBWSVJU SU9fTURFVl9GX1ZFUlNJT05fMSwgdGhlCj4gPj4gKyAqIGNhbGxiYWNrcyBhcmUgbWFuZGF0b3J5 IHVubGVzcyBleHBsaWNpdHkgbWVudGlvbmVkLiAgCj4gPiBJZiB0aGUgdmVyc2lvbiBvZiB0aGUg Y2FsbGJhY2tzIGlzIHJldHVybmVkIGJ5IGEgY2FsbGJhY2sgd2l0aGluIHRoZQo+ID4gc3RydWN0 dXJlIGRlZmluZWQgYnkgdGhlIHZlcnNpb24uLi4gaXNuJ3QgdGhhdCBhIGJpdCBjaXJjdWxhcj8g IFRoaXMKPiA+IHNlZW1zIHJlZHVuZGFudCB0byBtZSB2ZXJzdXMgdGhlIGNsYXNzIGlkLiAgVGhl IGZhY3QgdGhhdCB0aGUgcGFyZW50Cj4gPiBkcml2ZXIgZGVmaW5lcyB0aGUgZGV2aWNlIGFzIE1E RVZfQ0xBU1NfSURfVklSVElPIHNob3VsZCB0ZWxsIHVzIHRoaXMKPiA+IGFscmVhZHkuICBJZiBp dCB3YXMgaW5jcmVtZW50ZWQsIHdlJ2QgbmVlZCBhbiBNREVWX0NMQVNTX0lEX1ZJUlRJT3YyLAo+ ID4gd2hpY2ggdGhlIHZpcnRpby1tZGV2IGJ1cyBkcml2ZXIgY291bGQgYWRkIHRvIGl0cyBpZCB0 YWJsZSBhbmQgaGFuZGxlCj4gPiBkaWZmZXJlbnRseS4gIAo+IAo+IAo+IE15IHVuZGVyc3RhbmRp bmcgaXMgdmVyc2lvbnMgYXJlIG9ubHkgYWxsb3dlZCB0byBpbmNyZWFzZSBtb25vdG9uaWNhbGx5 LCAKPiB0aGlzIHNlZW1zIGxlc3MgZmxleGlibGUgdGhhbiBmZWF0dXJlcy4gRS5nIHdlIGhhdmUg ZmVhdHVyZXMgQSwgQiwgQywgCj4gbWRldiBkZXZpY2UgY2FuIGNob29zZSB0byBzdXBwb3J0IG9u bHkgYSBzdWJzZXQuIEUuZyB3aGVuIG1kZXYgZGV2aWNlIAo+IGNhbiBzdXBwb3J0IGRpcnR5IHBh Z2UgbG9nZ2luZywgaXQgY2FuIGFkZCBhIG5ldyBmZWF0dXJlIGJpdCBmb3IgZHJpdmVyIAo+IHRv IGtub3cgdGhhdCBpdCBzdXBwb3J0IG5ldyBkZXZpY2Ugb3BzLiBNREVWX0NMQVNTX0lEX1ZJUlRJ T3YyIG1heSBvbmx5IAo+IGJlIHVzZWZ1bCB3aGVuIHdlIHdpbGwgaW52ZW50IGEgY29tcGxldGUg bmV3IEFQSS4KCkJ1dCB0aGlzIGludGVyZmFjZSByYXRoZXIgY29uZmxhdGVzIGZlYXR1cmVzIGFu ZCB2ZXJzaW9ucyBieSByZXR1cm5pbmcKYSB2ZXJzaW9uIGFzIGEgZmVhdHVyZS4gIElmIHdlIHNp bXBseSB3YW50IHRvIHNheSB0aGF0IHRoZXJlIGFyZSBubwphZGRpdGlvbmFsIGZlYXR1cmVzLCB0 aGVuIGdldF9tZGV2X2ZlYXR1cmVzKCkgc2hvdWxkIHJldHVybiBhbiBlbXB0eQpzZXQuICBJZiBk aXJ0eSBwYWdlIGxvZ2dpbmcgaXMgYSBmZWF0dXJlLCB0aGVuIEknZCBleHBlY3QgYSBiaXQgaW4g dGhlCmdldF9tZGV2X2ZlYXR1cmVzKCkgcmV0dXJuIHZhbHVlIHRvIGlkZW50aWZ5IHRoYXQgZmVh dHVyZS4KCkhvd2V2ZXIsIEkndmUgYmVlbiB1bmRlciB0aGUgaW1wcmVzc2lvbiAocGVyaGFwcyB3 cm9uZ2x5KSB0aGF0IHRoZQpjbGFzcy1pZCBoYXMgYSAxOjEgY29ycmVsYXRpb24gdG8gdGhlIGRl dmljZS1vcHMgZXhwb3NlZCB0byB0aGUgYnVzCmRyaXZlciwgc28gaWYgZGlydHkgcGFnZSBsb2dn aW5nIHJlcXVpcmVzIGV4dHJhIGNhbGxiYWNrcywgdGhhdCB3b3VsZAppbXBseSBhIG5ldyBkZXZp Y2Utb3BzLCB3aGljaCByZXF1aXJlcyBhIG5ldyBjbGFzcy1pZC4gIEluIHRoYXQgY2FzZQp2aXJ0 aW8tbWRldiB3b3VsZCBjbGFpbSBib3RoIGNsYXNzLWlkcyBhbmQgd291bGQgbmVlZCBzb21lIHdh eSB0bwpkaWZmZXJlbnRpYXRlIHRoZW0uICBCdXQgSSBhbHNvIHNlZSB0aGF0IHN1Y2ggYSBzb2x1 dGlvbiBjYW4gYmVjb21lCnVubWFuYWdlYWJsZSBhcyB0aGUgc2V0IG9mIGNsYXNzLWlkcyB3b3Vs ZCBuZWVkIHRvIGVuY29tcGFzcyBldmVyeQpjb21iaW5hdGlvbiBvZiBmZWF0dXJlcy4KClNvIEkg dGhpbmsgd2hhdCdzIHN1Z2dlc3RlZCBieSB0aGlzIGlzIHRoYXQgdGhlIGluaXRpYWwgc3RydWN0 CnZpcnRpb19tZGV2X2RldmljZV9vcHMgaXMgYSBiYXNlIHNldCBvZiBjYWxsYmFja3Mgd2hpY2gg d291bGQgYmUKZXh0ZW5kZWQgdmlhIGZlYXR1cmVzPyAgQnV0IHRoZW4gd2h5IGRvZXMgZ2V0X2dl bmVyYXRpb24oKSBub3QgbWFrZSB1c2UKb2YgdGhpcz8gIEFuZCBpZiB3ZSBjYW4gZGVmaW5lIGdl dF9nZW5lcmF0aW9uKCkgYXMgb3B0aW9uYWwgYW5kIHNpbXBseQp0ZXN0IGlmIGl0J3MgaW1wbGVt ZW50ZWQsIHRoZW4gaXQgc2VlbXMgd2UgZG9uJ3QgbmVlZCBhbnkgZmVhdHVyZSBiaXRzCnRvIGV4 dGVuZCB0aGUgc3RydWN0dXJlICh1bmxlc3Mgd2UncmUgbG9va2luZyBhdCBiaW5hcnkgY29tcGF0 aWJpbGl0eSkuClNvIG1heWJlIGdldF9tZGV2X2ZlYXR1cmVzKCkgaXMgbWVhbnQgdG8gZXhwb3Nl IHVuZGVybHlpbmcgZmVhdHVyZXMKdW5yZWxhdGVkIHRvIHRoZSBjYWxsYmFja3M/ICBXaGljaCBp cyBub3QgaW4gbGluZSB3aXRoIHRoZSBkZXNjcmlwdGlvbj8KSG9wZWZ1bGx5IHlvdSBjYW4gc2Vl IG15IGNvbmZ1c2lvbiBpbiB3aGF0IHdlJ3JlIHRyeWluZyB0byBkbyBoZXJlLgpUaGFua3MsCgpB bGV4Cgo+ID4+ICsgKgo+ID4+ICsgKiBAc2V0X3ZxX2FkZHJlc3M6CQlTZXQgdGhlIGFkZHJlc3Mg b2YgdmlydHF1ZXVlCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJ CQkJQGlkeDogdmlydHF1ZXVlIGluZGV4Cj4gPj4gKyAqCQkJCUBkZXNjX2FyZWE6IGFkZHJlc3Mg b2YgZGVzYyBhcmVhCj4gPj4gKyAqCQkJCUBkcml2ZXJfYXJlYTogYWRkcmVzcyBvZiBkcml2ZXIg YXJlYQo+ID4+ICsgKgkJCQlAZGV2aWNlX2FyZWE6IGFkZHJlc3Mgb2YgZGV2aWNlIGFyZWEKPiA+ PiArICoJCQkJUmV0dXJucyBpbnRlZ2VyOiBzdWNjZXNzICgwKSBvciBlcnJvciAoPCAwKQo+ID4+ ICsgKiBAc2V0X3ZxX251bToJCQlTZXQgdGhlIHNpemUgb2YgdmlydHF1ZXVlCj4gPj4gKyAqCQkJ CUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJQGlkeDogdmlydHF1ZXVlIGluZGV4 Cj4gPj4gKyAqCQkJCUBudW06IHRoZSBzaXplIG9mIHZpcnRxdWV1ZQo+ID4+ICsgKiBAa2lja192 cToJCQlLaWNrIHRoZSB2aXJ0cXVldWUKPiA+PiArICoJCQkJQG1kZXY6IG1lZGlhdGVkIGRldmlj ZQo+ID4+ICsgKgkJCQlAaWR4OiB2aXJ0cXVldWUgaW5kZXgKPiA+PiArICogQHNldF92cV9jYjoJ CQlTZXQgdGhlIGludGVycnVwdCBjYWxsYmFjayBmdW5jdGlvbiBmb3IKPiA+PiArICoJCQkJYSB2 aXJ0cXVldWUKPiA+PiArICoJCQkJQG1kZXY6IG1lZGlhdGVkIGRldmljZQo+ID4+ICsgKgkJCQlA aWR4OiB2aXJ0cXVldWUgaW5kZXgKPiA+PiArICoJCQkJQGNiOiB2aXJ0aW8tbWRldiBpbnRlcnJ1 cHQgY2FsbGJhY2sgc3RydWN0dXJlCj4gPj4gKyAqIEBzZXRfdnFfcmVhZHk6CQlTZXQgcmVhZHkg c3RhdHVzIGZvciBhIHZpcnRxdWV1ZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNl Cj4gPj4gKyAqCQkJCUBpZHg6IHZpcnRxdWV1ZSBpbmRleAo+ID4+ICsgKgkJCQlAcmVhZHk6IHJl YWR5ICh0cnVlKSBub3QgcmVhZHkoZmFsc2UpCj4gPj4gKyAqIEBnZXRfdnFfcmVhZHk6CQlHZXQg cmVhZHkgc3RhdHVzIGZvciBhIHZpcnRxdWV1ZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQg ZGV2aWNlCj4gPj4gKyAqCQkJCUBpZHg6IHZpcnRxdWV1ZSBpbmRleAo+ID4+ICsgKgkJCQlSZXR1 cm5zIGJvb2xlYW46IHJlYWR5ICh0cnVlKSBvciBub3QgKGZhbHNlKQo+ID4+ICsgKiBAc2V0X3Zx X3N0YXRlOgkJU2V0IHRoZSBzdGF0ZSBmb3IgYSB2aXJ0cXVldWUKPiA+PiArICoJCQkJQG1kZXY6 IG1lZGlhdGVkIGRldmljZQo+ID4+ICsgKgkJCQlAaWR4OiB2aXJ0cXVldWUgaW5kZXgKPiA+PiAr ICoJCQkJQHN0YXRlOiB2aXJ0cXVldWUgc3RhdGUgKGxhc3RfYXZhaWxfaWR4KQo+ID4+ICsgKgkJ CQlSZXR1cm5zIGludGVnZXI6IHN1Y2Nlc3MgKDApIG9yIGVycm9yICg8IDApCj4gPj4gKyAqIEBn ZXRfdnFfc3RhdGU6CQlHZXQgdGhlIHN0YXRlIGZvciBhIHZpcnRxdWV1ZQo+ID4+ICsgKgkJCQlA bWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCUBpZHg6IHZpcnRxdWV1ZSBpbmRleAo+ ID4+ICsgKgkJCQlSZXR1cm5zIHZpcnRxdWV1ZSBzdGF0ZSAobGFzdF9hdmFpbF9pZHgpCj4gPj4g KyAqIEBnZXRfdnFfYWxpZ246CQlHZXQgdGhlIHZpcnRxdWV1ZSBhbGlnbiByZXF1aXJlbWVudAo+ ID4+ICsgKgkJCQlmb3IgdGhlIGRldmljZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2 aWNlCj4gPj4gKyAqCQkJCVJldHVybnMgdmlydHF1ZXVlIGFsZ2luIHJlcXVpcmVtZW50Cj4gPj4g KyAqIEBnZXRfZmVhdHVyZXM6CQlHZXQgdmlydGlvIGZlYXR1cmVzIHN1cHBvcnRlZCBieSB0aGUg ZGV2aWNlCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJUmV0 dXJucyB0aGUgdmlydGlvIGZlYXR1cmVzIHN1cHBvcnQgYnkgdGhlCj4gPj4gKyAqCQkJCWRldmlj ZQo+ID4+ICsgKiBAZ2V0X2ZlYXR1cmVzOgkJU2V0IHZpcnRpbyBmZWF0dXJlcyBzdXBwb3J0ZWQg YnkgdGhlIGRyaXZlciAgCj4gPiAgICAgICAgIF4gcy9nL3MvCj4gPgo+ID4gVGhhbmtzLAo+ID4g QWxleCAgCj4gCj4gCj4gV2lsbCBmaXguCj4gCj4gVGhhbmtzCj4gCj4gCj4gPiAgCj4gPj4gKyAq CQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJQGZlYXR1cmVzOiBmZWF0dXJl IHN1cHBvcnQgYnkgdGhlIGRyaXZlcgo+ID4+ICsgKgkJCQlSZXR1cm5zIGludGVnZXI6IHN1Y2Nl c3MgKDApIG9yIGVycm9yICg8IDApCj4gPj4gKyAqIEBzZXRfY29uZmlnX2NiOgkJU2V0IHRoZSBj b25maWcgaW50ZXJydXB0IGNhbGxiYWNrCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZp Y2UKPiA+PiArICoJCQkJQGNiOiB2aXJ0aW8tbWRldiBpbnRlcnJ1cHQgY2FsbGJhY2sgc3RydWN0 dXJlCj4gPj4gKyAqIEBnZXRfdnFfbnVtX21heDoJCUdldCB0aGUgbWF4IHNpemUgb2YgdmlydHF1 ZXVlCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+PiArICoJCQkJUmV0dXJu cyB1MTY6IG1heCBzaXplIG9mIHZpcnRxdWV1ZQo+ID4+ICsgKiBAZ2V0X2RldmljZV9pZDoJCUdl dCB2aXJ0aW8gZGV2aWNlIGlkCj4gPj4gKyAqCQkJCUBtZGV2OiBtZWRpYXRlZCBkZXZpY2UKPiA+ PiArICoJCQkJUmV0dXJucyB1MzI6IHZpcnRpbyBkZXZpY2UgaWQKPiA+PiArICogQGdldF92ZW5k b3JfaWQ6CQlHZXQgaWQgZm9yIHRoZSB2ZW5kb3IgdGhhdCBwcm92aWRlcyB0aGlzIGRldmljZQo+ ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCVJldHVybnMgdTMy OiB2aXJ0aW8gdmVuZG9yIGlkCj4gPj4gKyAqIEBnZXRfc3RhdHVzOgkJCUdldCB0aGUgZGV2aWNl IHN0YXR1cwo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCVJl dHVybnMgdTg6IHZpcnRpbyBkZXZpY2Ugc3RhdHVzCj4gPj4gKyAqIEBzZXRfc3RhdHVzOgkJCVNl dCB0aGUgZGV2aWNlIHN0YXR1cwo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4g Pj4gKyAqCQkJCUBzdGF0dXM6IHZpcnRpbyBkZXZpY2Ugc3RhdHVzCj4gPj4gKyAqIEBnZXRfY29u ZmlnOgkJCVJlYWQgZnJvbSBkZXZpY2Ugc3BlY2lmaWMgY29uZmlndXJhdGlvbiBzcGFjZQo+ID4+ ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCUBvZmZzZXQ6IG9mZnNl dCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YKPiA+PiArICoJCQkJY29uZmlndXJhdGlvbiBzcGFjZQo+ ID4+ICsgKgkJCQlAYnVmOiBidWZmZXIgdXNlZCB0byByZWFkIHRvCj4gPj4gKyAqCQkJCUBsZW46 IHRoZSBsZW5ndGggdG8gcmVhZCBmcm9tCj4gPj4gKyAqCQkJCWNvbmZpZ3JhdGlvbiBzcGFjZQo+ ID4+ICsgKiBAc2V0X2NvbmZpZzoJCQlXcml0ZSB0byBkZXZpY2Ugc3BlY2lmaWMgY29uZmlndXJh dGlvbiBzcGFjZQo+ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJ CUBvZmZzZXQ6IG9mZnNldCBmcm9tIHRoZSBiZWdpbm5pbmcgb2YKPiA+PiArICoJCQkJY29uZmln dXJhdGlvbiBzcGFjZQo+ID4+ICsgKgkJCQlAYnVmOiBidWZmZXIgdXNlZCB0byB3cml0ZSBmcm9t Cj4gPj4gKyAqCQkJCUBsZW46IHRoZSBsZW5ndGggdG8gd3JpdGUgdG8KPiA+PiArICoJCQkJY29u ZmlncmF0aW9uIHNwYWNlCj4gPj4gKyAqIEBnZXRfbWRldl9mZWF0dXJlczoJCUdldCBhIHNldCBv ZiBiaXRzIHRoYXQgZGVtb25zdHJhdGUKPiA+PiArICoJCQkJdGhlY2FwYWJpbGl0eSBvZiB0aGUg bWRldiBkZXZpY2UuIE5ldwo+ID4+ICsgKgkJCQlmZWF0dXJlcyBiaXRzIG11c3QgYmUgYWRkZWQg d2hlbgo+ID4+ICsgKgkJCQlpbnRyb2R1Y2luZyBuZXcgZGV2aWNlIG9wcy4KPiA+PiArICoJCQkJ QG1kZXY6IG1lZGlhdGVkIGRldmljZQo+ID4+ICsgKgkJCQlSZXR1cm5zIHRoZSBtZGV2IGZlYXR1 cmVzIChBUEkpIHN1cHBvcnQgYnkKPiA+PiArICoJCQkJdGhlIGRldmljZS4KPiA+PiArICogQGdl dF9nZW5lcmF0aW9uOgkJR2V0IGRldmljZSBjb25maWcgZ2VuZXJhdG9uIChvcHRpb25hbGx5KQo+ ID4+ICsgKgkJCQlAbWRldjogbWVkaWF0ZWQgZGV2aWNlCj4gPj4gKyAqCQkJCVJldHVybnMgdTMy OiBkZXZpY2UgZ2VuZXJhdGlvbgo+ID4+ICsgKi8KPiA+PiArc3RydWN0IHZpcnRpb19tZGV2X2Rl dmljZV9vcHMgewo+ID4+ICsJLyogVmlydHF1ZXVlIG9wcyAqLwo+ID4+ICsJaW50ICgqc2V0X3Zx X2FkZHJlc3MpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwKPiA+PiArCQkJICAgICAgdTE2IGlk eCwgdTY0IGRlc2NfYXJlYSwgdTY0IGRyaXZlcl9hcmVhLAo+ID4+ICsJCQkgICAgICB1NjQgZGV2 aWNlX2FyZWEpOwo+ID4+ICsJdm9pZCAoKnNldF92cV9udW0pKHN0cnVjdCBtZGV2X2RldmljZSAq bWRldiwgdTE2IGlkeCwgdTMyIG51bSk7Cj4gPj4gKwl2b2lkICgqa2lja192cSkoc3RydWN0IG1k ZXZfZGV2aWNlICptZGV2LCB1MTYgaWR4KTsKPiA+PiArCXZvaWQgKCpzZXRfdnFfY2IpKHN0cnVj dCBtZGV2X2RldmljZSAqbWRldiwgdTE2IGlkeCwKPiA+PiArCQkJICBzdHJ1Y3QgdmlydGlvX21k ZXZfY2FsbGJhY2sgKmNiKTsKPiA+PiArCXZvaWQgKCpzZXRfdnFfcmVhZHkpKHN0cnVjdCBtZGV2 X2RldmljZSAqbWRldiwgdTE2IGlkeCwgYm9vbCByZWFkeSk7Cj4gPj4gKwlib29sICgqZ2V0X3Zx X3JlYWR5KShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsIHUxNiBpZHgpOwo+ID4+ICsJaW50ICgq c2V0X3ZxX3N0YXRlKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsIHUxNiBpZHgsIHU2NCBzdGF0 ZSk7Cj4gPj4gKwl1NjQgKCpnZXRfdnFfc3RhdGUpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwg dTE2IGlkeCk7Cj4gPj4gKwo+ID4+ICsJLyogVmlydGlvIGRldmljZSBvcHMgKi8KPiA+PiArCXUx NiAoKmdldF92cV9hbGlnbikoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArCXU2NCAo KmdldF9mZWF0dXJlcykoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArCWludCAoKnNl dF9mZWF0dXJlcykoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2LCB1NjQgZmVhdHVyZXMpOwo+ID4+ ICsJdm9pZCAoKnNldF9jb25maWdfY2IpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwKPiA+PiAr CQkJICAgICAgc3RydWN0IHZpcnRpb19tZGV2X2NhbGxiYWNrICpjYik7Cj4gPj4gKwl1MTYgKCpn ZXRfdnFfbnVtX21heCkoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArCXUzMiAoKmdl dF9kZXZpY2VfaWQpKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldik7Cj4gPj4gKwl1MzIgKCpnZXRf dmVuZG9yX2lkKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYpOwo+ID4+ICsJdTggKCpnZXRfc3Rh dHVzKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYpOwo+ID4+ICsJdm9pZCAoKnNldF9zdGF0dXMp KHN0cnVjdCBtZGV2X2RldmljZSAqbWRldiwgdTggc3RhdHVzKTsKPiA+PiArCXZvaWQgKCpnZXRf Y29uZmlnKShzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsIHVuc2lnbmVkIGludCBvZmZzZXQsCj4g Pj4gKwkJCSAgIHZvaWQgKmJ1ZiwgdW5zaWduZWQgaW50IGxlbik7Cj4gPj4gKwl2b2lkICgqc2V0 X2NvbmZpZykoc3RydWN0IG1kZXZfZGV2aWNlICptZGV2LCB1bnNpZ25lZCBpbnQgb2Zmc2V0LAo+ ID4+ICsJCQkgICBjb25zdCB2b2lkICpidWYsIHVuc2lnbmVkIGludCBsZW4pOwo+ID4+ICsJdTMy ICgqZ2V0X2dlbmVyYXRpb24pKHN0cnVjdCBtZGV2X2RldmljZSAqbWRldik7Cj4gPj4gKwo+ID4+ ICsJLyogTWRldiBkZXZpY2Ugb3BzICovCj4gPj4gKwl1NjQgKCpnZXRfbWRldl9mZWF0dXJlcyko c3RydWN0IG1kZXZfZGV2aWNlICptZGV2KTsKPiA+PiArfTsKPiA+PiArCj4gPj4gK3ZvaWQgbWRl dl9zZXRfdmlydGlvX29wcyhzdHJ1Y3QgbWRldl9kZXZpY2UgKm1kZXYsCj4gPj4gKwkJCSBjb25z dCBzdHJ1Y3QgdmlydGlvX21kZXZfZGV2aWNlX29wcyAqdmlydGlvX29wcyk7Cj4gPj4gKwo+ID4+ ICsjZW5kaWYgIAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4