From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Christian_K=c3=b6nig?= Subject: Re: [PATCH 1/5] drm/amdgpu:keep ctx alive till all job finished Date: Wed, 3 May 2017 11:18:38 +0200 Message-ID: References: <1493623371-32614-1-git-send-email-Monk.Liu@amd.com> <1493623371-32614-2-git-send-email-Monk.Liu@amd.com> <059fe927-90c8-0cf3-336c-56818d9277f0@vodafone.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "Liu, Monk" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" Pj4gSSdtIGFmcmFpZCBub3Q6ICBDU0EgaXMgZ29uZSB3aXRoIHRoZSBWTSwgYW5kIFZNIGlzIGdv bmUgYWZ0ZXIgYXBwIGNsb3NlIG91ciBGRCwgSSBkb24ndCBzZWUgYW1kZ3B1X3ZtX2ZpbmkoKSBp cyBkZXBlbmRlZCBvbiBjb250ZXh0IGxpdmluZyBvciBub3QgLi4uCgpTZWUgdGhlIHRlYXJkb3du IG9yZGVyIGluIGFtZGdwdV9kcml2ZXJfcG9zdGNsb3NlX2ttcygpOgo+IGFtZGdwdV9jdHhfbWdy X2ZpbmkoJmZwcml2LT5jdHhfbWdyKTsKPgo+ICAgICAgICAgYW1kZ3B1X3V2ZF9mcmVlX2hhbmRs ZXMoYWRldiwgZmlsZV9wcml2KTsKPiAgICAgICAgIGFtZGdwdV92Y2VfZnJlZV9oYW5kbGVzKGFk ZXYsIGZpbGVfcHJpdik7Cj4KPiAgICAgICAgIGFtZGdwdV92bV9ib19ybXYoYWRldiwgZnByaXYt PnBydF92YSk7Cj4KPiAgICAgICAgIGlmIChhbWRncHVfc3Jpb3ZfdmYoYWRldikpIHsKPiAgICAg ICAgICAgICAgICAgLyogVE9ETzogaG93IHRvIGhhbmRsZSByZXNlcnZlIGZhaWx1cmUgKi8KPiAg ICAgICAgICAgICAgICAgQlVHX09OKGFtZGdwdV9ib19yZXNlcnZlKGFkZXYtPnZpcnQuY3NhX29i aiwgZmFsc2UpKTsKPiAgICAgICAgICAgICAgICAgYW1kZ3B1X3ZtX2JvX3JtdihhZGV2LCBmcHJp di0+dm0uY3NhX2JvX3ZhKTsKPiAgICAgICAgICAgICAgICAgZnByaXYtPnZtLmNzYV9ib192YSA9 IE5VTEw7Cj4gICAgICAgICAgICAgICAgIGFtZGdwdV9ib191bnJlc2VydmUoYWRldi0+dmlydC5j c2Ffb2JqKTsKPiAgICAgICAgIH0KPgo+ICAgICAgICAgYW1kZ3B1X3ZtX2ZpbmkoYWRldiwgJmZw cml2LT52bSk7CgphbWRncHVfY3R4X21ncl9maW5pKCkgd2FpdHMgZm9yIHNjaGVkdWxpbmcgdG8g ZmluaXNoIGFuZCByZWxlYXNlcyBhbGwgCmNvbnRleHRzIG9mIHRoZSBjdXJyZW50IGZkLgoKSWYg d2UgZG9uJ3QgcmVsZWFzZSB0aGUgY29udGV4dCBoZXJlIGJlY2F1c2Ugc29tZSBqb2JzIGFyZSBz dGlsbCAKZXhlY3V0ZWQgd2UgbmVlZCB0byBrZWVwIHRoZSBVVkQgYW5kIFZDRSBoYW5kbGUsIHRo ZSBQUlQgVkFzLCB0aGUgQ1NBIAphbmQgZXZlbiB0aGUgd2hvbGUgVk0gc3RydWN0dXJlIGFsaXZl LgoKPiBJJ2xsIHNlZSBpZiBkbWFfZmVuY2UgY291bGQgc29sdmUgbXkgaXNzdWUsIGJ1dCBJIHdp c2ggeW91IGNhbiBnaXZlIG1lIHlvdXIgZGV0YWlsIGlkZWEKUGxlYXNlIHRha2UgYSBsb29rIGF0 IERhdmlkJ3MgaWRlYSBvZiB1c2luZyB0aGUgZmVuY2VfY29udGV4dCB0byBmaW5kIAp3aGljaCBq b2JzIGFuZCBlbnRpdHkgdG8gc2tpcCwgdGhhdCBpcyBldmVuIGJldHRlciB0aGFuIG1pbmUgYWJv dXQgdGhlIApmZW5jZSBzdGF0dXMgYW5kIHNob3VsZCBiZSB0cml2aWFsIHRvIGltcGxlbWVudCBi ZWNhdXNlIGFsbCB0aGUgZGF0YSBpcyAKYWxyZWFkeSBwcmVzZW50IHdlIGp1c3QgbmVlZCB0byB1 c2UgaXQuCgpSZWdhcmRzLApDaHJpc3RpYW4uCgpBbSAwMy4wNS4yMDE3IHVtIDExOjA4IHNjaHJp ZWIgTGl1LCBNb25rOgo+IDEsTXkgaWRlYSBpcyB0aGF0IHVzZXJzcGFjZSBzaG91bGQgcmF0aGVy IGdhdGhlciB0aGUgZmVlZGJhY2sgZHVyaW5nIHRoZSBuZXh0IGNvbW1hbmQgc3VibWlzc2lvbi4g VGhpcyBoYXMgdGhlIGFkdmFudGFnZSB0aGF0IHlvdSBkb24ndCBuZWVkIHRvIGtlZXAgdXNlcnNw YWNlIGFsaXZlIHRpbGwgYWxsIGpvYnMgYXJlIGRvbmUuCj4KPj4gTm8sIHdlIG5lZWQgdG8gY2xl YW4gdGhlIGh3IHJpbmcgKGNoZXJyeS1waWNrIG91dCBndWlsdHkgZW50aXRpZXMnIGpvYiBpbiBh bGwgcmluZ3MpIGFmdGVyIGdwdSByZXNldCwgYW5kIHdlIG5lZWQgZmFja2x5IHNpZ25hbCBhbGwg c2NoZWRfZmVuY2UgaW4gdGhlIGd1aXR5IGVudGl0eSBhcyB3ZWxsLCBhbmQgd2UgbmVlZCBtYXJr IGNvbnRleHQgYXMgZ3VpbHR5IHNvIHRoZSBuZXh0IElPQ1RMIG9uIGl0IHdpbGwgcmV0dXJuIC1F Tk9ERVYuCj4+IEkgZG9uJ3QgdW5kZXJzdGFuZCBob3cgeW91ciBpZGVhIGNhbiBzb2x2ZSBteSBy ZXF1ZXN0IC4uLgo+IDIsWW91IG5lZWQgdG8ga2VlcCBxdWl0ZSBhIGJ1bmNoIG9mIHN0dWZmIGFs aXZlIChWTSwgQ1NBKSB3aGVuIHlvdSBkb24ndCB0ZWFyIGRvd24gdGhlIGN0eCBpbW1lZGlhdGVs eS4KPgo+PiBJJ20gYWZyYWlkIG5vdDogIENTQSBpcyBnb25lIHdpdGggdGhlIFZNLCBhbmQgVk0g aXMgZ29uZSBhZnRlciBhcHAgY2xvc2Ugb3VyIEZELCBJIGRvbid0IHNlZSBhbWRncHVfdm1fZmlu aSgpIGlzIGRlcGVuZGVkIG9uIGNvbnRleHQgbGl2aW5nIG9yIG5vdCAuLi4KPiAzLCBzdHJ1Y3Qg ZmVuY2Ugd2FzIHJlbmFtZWQgdG8gc3RydWN0IGRtYV9mZW5jZSBvbiBuZXdlciBrZXJuZWxzIGFu ZCBhIHN0YXR1cyBmaWVsZCBhZGRlZCB0byBleGFjdGx5IHRoaXMgcHVycG9zZS4KPgo+IFRoZSBJ bnRlbCBndXlzIGRpZCB0aGlzIGJlY2F1c2UgdGhleSByYW4gaW50byB0aGUgZXhhY3RseSBzYW1l IHByb2JsZW0uCj4KPj4gSSdsbCBzZWUgaWYgZG1hX2ZlbmNlIGNvdWxkIHNvbHZlIG15IGlzc3Vl LCBidXQgSSB3aXNoIHlvdSBjYW4gZ2l2ZSBtZSB5b3VyIGRldGFpbCBpZGVhCj4KPiBCUiBNb25r Cj4KPgo+Cj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiBGcm9tOiBDaHJpc3RpYW4gS8O2 bmlnIFttYWlsdG86ZGVhdGhzaW1wbGVAdm9kYWZvbmUuZGVdCj4gU2VudDogV2VkbmVzZGF5LCBN YXkgMDMsIDIwMTcgNDo1OSBQTQo+IFRvOiBMaXUsIE1vbmsgPE1vbmsuTGl1QGFtZC5jb20+OyBh bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggMS81XSBk cm0vYW1kZ3B1OmtlZXAgY3R4IGFsaXZlIHRpbGwgYWxsIGpvYiBmaW5pc2hlZAo+Cj4+IDEsIFRo aXMgaXMgbmVjZXNzYXJ5IG90aGVyd2lzZSBob3cgY2FuIEkgYWNjZXNzIGVudGl0eSBwb2ludGVy IGFmdGVyIGEKPj4gam9iIHRpbWVkb3V0Cj4gTm8gdGhhdCBpc24ndCBuZWNlc3NhcnkuCj4KPiBU aGUgcHJvYmxlbSB3aXRoIHlvdXIgaWRlYSBpcyB0aGF0IHlvdSB3YW50IHRvIGFjdGl2ZWx5IHB1 c2ggdGhlIGZlZWRiYWNrL3N0YXR1cyBmcm9tIHRoZSBqb2IgZXhlY3V0aW9uIGJhY2sgdG8gdXNl cnNwYWNlIHdoZW4gYW4gZXJyb3IKPiAodGltZW91dCkgaGFwcGVucy4KPgo+IE15IGlkZWEgaXMg dGhhdCB1c2Vyc3BhY2Ugc2hvdWxkIHJhdGhlciBnYXRoZXIgdGhlIGZlZWRiYWNrIGR1cmluZyB0 aGUgbmV4dCBjb21tYW5kIHN1Ym1pc3Npb24uIFRoaXMgaGFzIHRoZSBhZHZhbnRhZ2UgdGhhdCB5 b3UgZG9uJ3QgbmVlZCB0byBrZWVwIHVzZXJzcGFjZSBhbGl2ZSB0aWxsIGFsbCBqb2JzIGFyZSBk b25lLgo+Cj4+ICAgICwgYW5kIHdoeSBpdCBpcyBkYW5nZXJvdXMgPwo+IFlvdSBuZWVkIHRvIGtl ZXAgcXVpdGUgYSBidW5jaCBvZiBzdHVmZiBhbGl2ZSAoVk0sIENTQSkgd2hlbiB5b3UgZG9uJ3Qg dGVhciBkb3duIHRoZSBjdHggaW1tZWRpYXRlbHkuCj4KPiBXZSBjb3VsZCBzcGxpdCBjdHggdGVh ciBkb3duIGludG8gZnJlZWluZyB0aGUgcmVzb3VyY2VzIGFuZCBmcmVlaW5nIHRoZSBzdHJ1Y3R1 cmUsIGJ1dCBJIHRoaW5rIGp1c3QgZ2F0aGVyaW5nIHRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgb24g Q1MgaXMgZWFzaWVyIHRvIGRvLgo+Cj4+IDIsIHdoYXQncyB0aGUgc3RhdHVzIGZpZWxkIGluIHRo ZSBmZW5jZXMgeW91IHdlcmUgcmVmZXJyaW5nIHRvID8gSQo+PiBuZWVkIHRvIGp1ZGdlIGlmIGl0 IGNvdWxkIHNhdGlzZnkgbXkgcmVxdWlyZW1lbnQKPiBzdHJ1Y3QgZmVuY2Ugd2FzIHJlbmFtZWQg dG8gc3RydWN0IGRtYV9mZW5jZSBvbiBuZXdlciBrZXJuZWxzIGFuZCBhIHN0YXR1cyBmaWVsZCBh ZGRlZCB0byBleGFjdGx5IHRoaXMgcHVycG9zZS4KPgo+IFRoZSBJbnRlbCBndXlzIGRpZCB0aGlz IGJlY2F1c2UgdGhleSByYW4gaW50byB0aGUgZXhhY3RseSBzYW1lIHByb2JsZW0uCj4KPiBSZWdh cmRzLAo+IENocmlzdGlhbi4KPgo+IEFtIDAzLjA1LjIwMTcgdW0gMDU6MzAgc2NocmllYiBMaXUs IE1vbms6Cj4+IDEsIFRoaXMgaXMgbmVjZXNzYXJ5IG90aGVyd2lzZSBob3cgY2FuIEkgYWNjZXNz IGVudGl0eSBwb2ludGVyIGFmdGVyIGEgam9iIHRpbWVkb3V0ICwgYW5kIHdoeSBpdCBpcyBkYW5n ZXJvdXMgPwo+PiAyLCB3aGF0J3MgdGhlIHN0YXR1cyBmaWVsZCBpbiB0aGUgZmVuY2VzIHlvdSB3 ZXJlIHJlZmVycmluZyB0byA/IEkKPj4gbmVlZCB0byBqdWRnZSBpZiBpdCBjb3VsZCBzYXRpc2Z5 IG15IHJlcXVpcmVtZW50Cj4+Cj4+Cj4+Cj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+ IEZyb206IENocmlzdGlhbiBLw7ZuaWcgW21haWx0bzpkZWF0aHNpbXBsZUB2b2RhZm9uZS5kZV0K Pj4gU2VudDogTW9uZGF5LCBNYXkgMDEsIDIwMTcgMTA6NDggUE0KPj4gVG86IExpdSwgTW9uayA8 TW9uay5MaXVAYW1kLmNvbT47IGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4+IFN1Ympl Y3Q6IFJlOiBbUEFUQ0ggMS81XSBkcm0vYW1kZ3B1OmtlZXAgY3R4IGFsaXZlIHRpbGwgYWxsIGpv Ygo+PiBmaW5pc2hlZAo+Pgo+PiBBbSAwMS4wNS4yMDE3IHVtIDA5OjIyIHNjaHJpZWIgTW9uayBM aXU6Cj4+PiBmb3IgVERSIGd1aWx0eSBjb250ZXh0IGZlYXR1cmUsIHdlIG5lZWQgYWNjZXNzIGN0 eC9zX2VudGl0eSBmaWVsZAo+Pj4gbWVtYmVyIHRocm91Z2ggc2NoZWQgam9iIHBvaW50ZXIsc28g Y3R4IG11c3Qga2VlcCBhbGl2ZSB0aWxsIGFsbCBqb2IKPj4+IGZyb20gaXQgc2lnbmFsZWQuCj4+ IE5BSywgdGhhdCBpcyB1bm5lY2Vzc2FyeSBhbmQgcXVpdGUgZGFuZ2Vyb3VzLgo+Pgo+PiBJbnN0 ZWFkIHdlIGhhdmUgdGhlIGRlc2lnbmVkIHN0YXR1cyBmaWVsZCBpbiB0aGUgZmVuY2VzIHdoaWNo IHNob3VsZCBiZSBjaGVja2VkIGZvciB0aGF0Lgo+Pgo+PiBSZWdhcmRzLAo+PiBDaHJpc3RpYW4u Cj4+Cj4+PiBDaGFuZ2UtSWQ6IEliODdlOTUwMmY3YTVjOGMwNTRjN2U1Njk1NmQ3ZjdhZDc1OTk4 ZTQzCj4+PiBTaWduZWQtb2ZmLWJ5OiBNb25rIExpdSA8TW9uay5MaXVAYW1kLmNvbT4KPj4+IC0t LQo+Pj4gICAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oICAgICAgICAgICB8 IDYgKysrKystCj4+PiAgICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMg ICAgICAgIHwgMiArLQo+Pj4gICAgIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9j dHguYyAgICAgICB8IDkgKysrKysrKysrCj4+PiAgICAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X2pvYi5jICAgICAgIHwgOSArKysrKysrLS0KPj4+ICAgICBkcml2ZXJzL2dwdS9k cm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmMgfCA2IC0tLS0tLQo+Pj4gICAgIGRyaXZl cnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuaCB8IDEgKwo+Pj4gICAgIDYg ZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCj4+Pgo+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+PiBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+PiBpbmRleCBlMzMwMDA5Li44ZTAz MWQ2IDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgK Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+PiBAQCAtNzYw LDEwICs3NjAsMTIgQEAgc3RydWN0IGFtZGdwdV9pYiB7Cj4+PiAgICAgCXVpbnQzMl90CQkJZmxh Z3M7Cj4+PiAgICAgfTsKPj4+ICAgICAKPj4+ICtzdHJ1Y3QgYW1kZ3B1X2N0eDsKPj4+ICsKPj4+ ICAgICBleHRlcm4gY29uc3Qgc3RydWN0IGFtZF9zY2hlZF9iYWNrZW5kX29wcyBhbWRncHVfc2No ZWRfb3BzOwo+Pj4gICAgIAo+Pj4gICAgIGludCBhbWRncHVfam9iX2FsbG9jKHN0cnVjdCBhbWRn cHVfZGV2aWNlICphZGV2LCB1bnNpZ25lZCBudW1faWJzLAo+Pj4gLQkJICAgICBzdHJ1Y3QgYW1k Z3B1X2pvYiAqKmpvYiwgc3RydWN0IGFtZGdwdV92bSAqdm0pOwo+Pj4gKwkJICAgICBzdHJ1Y3Qg YW1kZ3B1X2pvYiAqKmpvYiwgc3RydWN0IGFtZGdwdV92bSAqdm0sIHN0cnVjdAo+Pj4gK2FtZGdw dV9jdHggKmN0eCk7Cj4+PiAgICAgaW50IGFtZGdwdV9qb2JfYWxsb2Nfd2l0aF9pYihzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiwgdW5zaWduZWQgc2l6ZSwKPj4+ICAgICAJCQkgICAgIHN0cnVj dCBhbWRncHVfam9iICoqam9iKTsKPj4+ICAgICAKPj4+IEBAIC04MDIsNiArODA0LDcgQEAgc3Ry dWN0IGFtZGdwdV9jdHhfbWdyIHsKPj4+ICAgICAKPj4+ICAgICBzdHJ1Y3QgYW1kZ3B1X2N0eCAq YW1kZ3B1X2N0eF9nZXQoc3RydWN0IGFtZGdwdV9mcHJpdiAqZnByaXYsIHVpbnQzMl90IGlkKTsK Pj4+ICAgICBpbnQgYW1kZ3B1X2N0eF9wdXQoc3RydWN0IGFtZGdwdV9jdHggKmN0eCk7Cj4+PiAr c3RydWN0IGFtZGdwdV9jdHggKmFtZGdwdV9jdHhfa3JlZl9nZXQoc3RydWN0IGFtZGdwdV9jdHgg KmN0eCk7Cj4+PiAgICAgCj4+PiAgICAgdWludDY0X3QgYW1kZ3B1X2N0eF9hZGRfZmVuY2Uoc3Ry dWN0IGFtZGdwdV9jdHggKmN0eCwgc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLAo+Pj4gICAgIAkJ CSAgICAgIHN0cnVjdCBmZW5jZSAqZmVuY2UpOwo+Pj4gQEAgLTExMjksNiArMTEzMiw3IEBAIHN0 cnVjdCBhbWRncHVfam9iIHsKPj4+ICAgICAJc3RydWN0IGFtZGdwdV9zeW5jCXN5bmM7Cj4+PiAg ICAgCXN0cnVjdCBhbWRncHVfaWIJKmliczsKPj4+ICAgICAJc3RydWN0IGZlbmNlCQkqZmVuY2U7 IC8qIHRoZSBodyBmZW5jZSAqLwo+Pj4gKwlzdHJ1Y3QgYW1kZ3B1X2N0eCAqY3R4Owo+Pj4gICAg IAl1aW50MzJfdAkJcHJlYW1ibGVfc3RhdHVzOwo+Pj4gICAgIAl1aW50MzJfdAkJbnVtX2liczsK Pj4+ICAgICAJdm9pZAkJCSpvd25lcjsKPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfY3MuYwo+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfY3MuYwo+Pj4gaW5kZXggNjk5ZjVmZS4uMjY3ZmI2NSAxMDA2NDQKPj4+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCj4+PiArKysgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwo+Pj4gQEAgLTIzNCw3ICsyMzQsNyBAQCBpbnQg YW1kZ3B1X2NzX3BhcnNlcl9pbml0KHN0cnVjdCBhbWRncHVfY3NfcGFyc2VyICpwLCB2b2lkICpk YXRhKQo+Pj4gICAgIAkJfQo+Pj4gICAgIAl9Cj4+PiAgICAgCj4+PiAtCXJldCA9IGFtZGdwdV9q b2JfYWxsb2MocC0+YWRldiwgbnVtX2licywgJnAtPmpvYiwgdm0pOwo+Pj4gKwlyZXQgPSBhbWRn cHVfam9iX2FsbG9jKHAtPmFkZXYsIG51bV9pYnMsICZwLT5qb2IsIHZtLCBwLT5jdHgpOwo+Pj4g ICAgIAlpZiAocmV0KQo+Pj4gICAgIAkJZ290byBmcmVlX2FsbF9rZGF0YTsKPj4+ICAgICAKPj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3R4LmMKPj4+ IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2N0eC5jCj4+PiBpbmRleCBiNGJi YmIzLi44MTQzOGFmIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv YW1kZ3B1X2N0eC5jCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf Y3R4LmMKPj4+IEBAIC0yNSw2ICsyNSwxMyBAQAo+Pj4gICAgICNpbmNsdWRlIDxkcm0vZHJtUC5o Pgo+Pj4gICAgICNpbmNsdWRlICJhbWRncHUuaCIKPj4+ICAgICAKPj4+ICtzdHJ1Y3QgYW1kZ3B1 X2N0eCAqYW1kZ3B1X2N0eF9rcmVmX2dldChzdHJ1Y3QgYW1kZ3B1X2N0eCAqY3R4KSB7Cj4+PiAr CWlmIChjdHgpCj4+PiArCQlrcmVmX2dldCgmY3R4LT5yZWZjb3VudCk7Cj4+PiArCXJldHVybiBj dHg7Cj4+PiArfQo+Pj4gKwo+Pj4gICAgIHN0YXRpYyBpbnQgYW1kZ3B1X2N0eF9pbml0KHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1X2N0eCAqY3R4KQo+Pj4gICAgIHsK Pj4+ICAgICAJdW5zaWduZWQgaSwgajsKPj4+IEBAIC01Niw2ICs2Myw4IEBAIHN0YXRpYyBpbnQg YW1kZ3B1X2N0eF9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1 X2N0eCAqY3R4KQo+Pj4gICAgIAkJCQkJICBycSwgYW1kZ3B1X3NjaGVkX2pvYnMpOwo+Pj4gICAg IAkJaWYgKHIpCj4+PiAgICAgCQkJZ290byBmYWlsZWQ7Cj4+PiArCj4+PiArCQljdHgtPnJpbmdz W2ldLmVudGl0eS5wdHJfZ3VpbHR5ID0gJmN0eC0+Z3VpbHR5OyAvKiBrZXJuZWwgZW50aXR5Cj4+ PiArZG9lc24ndCBoYXZlIHB0cl9ndWlsdHkgKi8KPj4+ICAgICAJfQo+Pj4gICAgIAo+Pj4gICAg IAlyZXR1cm4gMDsKPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfam9iLmMKPj4+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2pvYi5j Cj4+PiBpbmRleCA2OTBlZjNkLi4yMDhkYTExIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2pvYi5jCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfam9iLmMKPj4+IEBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyB2b2lkIGFt ZGdwdV9qb2JfdGltZWRvdXQoc3RydWN0IGFtZF9zY2hlZF9qb2IgKnNfam9iKQo+Pj4gICAgIH0K Pj4+ICAgICAKPj4+ICAgICBpbnQgYW1kZ3B1X2pvYl9hbGxvYyhzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldiwgdW5zaWduZWQgbnVtX2licywKPj4+IC0JCSAgICAgc3RydWN0IGFtZGdwdV9qb2Ig Kipqb2IsIHN0cnVjdCBhbWRncHVfdm0gKnZtKQo+Pj4gKwkJICAgICBzdHJ1Y3QgYW1kZ3B1X2pv YiAqKmpvYiwgc3RydWN0IGFtZGdwdV92bSAqdm0sIHN0cnVjdAo+Pj4gK2FtZGdwdV9jdHggKmN0 eCkKPj4+ICAgICB7Cj4+PiAgICAgCXNpemVfdCBzaXplID0gc2l6ZW9mKHN0cnVjdCBhbWRncHVf am9iKTsKPj4+ICAgICAKPj4+IEBAIC01Nyw2ICs1Nyw3IEBAIGludCBhbWRncHVfam9iX2FsbG9j KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCB1bnNpZ25lZCBudW1faWJzLAo+Pj4gICAgIAko KmpvYiktPnZtID0gdm07Cj4+PiAgICAgCSgqam9iKS0+aWJzID0gKHZvaWQgKikmKCpqb2IpWzFd Owo+Pj4gICAgIAkoKmpvYiktPm51bV9pYnMgPSBudW1faWJzOwo+Pj4gKwkoKmpvYiktPmN0eCA9 IGFtZGdwdV9jdHhfa3JlZl9nZXQoY3R4KTsKPj4+ICAgICAKPj4+ICAgICAJYW1kZ3B1X3N5bmNf Y3JlYXRlKCYoKmpvYiktPnN5bmMpOwo+Pj4gICAgIAo+Pj4gQEAgLTY4LDcgKzY5LDcgQEAgaW50 IGFtZGdwdV9qb2JfYWxsb2Nfd2l0aF9pYihzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdW5z aWduZWQgc2l6ZSwKPj4+ICAgICB7Cj4+PiAgICAgCWludCByOwo+Pj4gICAgIAo+Pj4gLQlyID0g YW1kZ3B1X2pvYl9hbGxvYyhhZGV2LCAxLCBqb2IsIE5VTEwpOwo+Pj4gKwlyID0gYW1kZ3B1X2pv Yl9hbGxvYyhhZGV2LCAxLCBqb2IsIE5VTEwsIE5VTEwpOwo+Pj4gICAgIAlpZiAocikKPj4+ICAg ICAJCXJldHVybiByOwo+Pj4gICAgIAo+Pj4gQEAgLTk0LDYgKzk1LDEwIEBAIHZvaWQgYW1kZ3B1 X2pvYl9mcmVlX3Jlc291cmNlcyhzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iKQo+Pj4gICAgIHN0YXRp YyB2b2lkIGFtZGdwdV9qb2JfZnJlZV9jYihzdHJ1Y3QgYW1kX3NjaGVkX2pvYiAqc19qb2IpCj4+ PiAgICAgewo+Pj4gICAgIAlzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iID0gY29udGFpbmVyX29mKHNf am9iLCBzdHJ1Y3QgYW1kZ3B1X2pvYiwKPj4+IGJhc2UpOwo+Pj4gKwlzdHJ1Y3QgYW1kZ3B1X2N0 eCAqY3R4ID0gam9iLT5jdHg7Cj4+PiArCj4+PiArCWlmIChjdHgpCj4+PiArCQlhbWRncHVfY3R4 X3B1dChjdHgpOwo+Pj4gICAgIAo+Pj4gICAgIAlmZW5jZV9wdXQoam9iLT5mZW5jZSk7Cj4+PiAg ICAgCWFtZGdwdV9zeW5jX2ZyZWUoJmpvYi0+c3luYyk7Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9zY2hlZHVsZXIvZ3B1X3NjaGVkdWxlci5jCj4+PiBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuYwo+Pj4gaW5kZXggNmY0ZTMxZi4uOTEw MGNhOCAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9z Y2hlZHVsZXIuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9zY2hlZHVsZXIvZ3B1X3Nj aGVkdWxlci5jCj4+PiBAQCAtMjA4LDEyICsyMDgsNiBAQCB2b2lkIGFtZF9zY2hlZF9lbnRpdHlf ZmluaShzdHJ1Y3QgYW1kX2dwdV9zY2hlZHVsZXIgKnNjaGVkLAo+Pj4gICAgIAlpZiAoIWFtZF9z Y2hlZF9lbnRpdHlfaXNfaW5pdGlhbGl6ZWQoc2NoZWQsIGVudGl0eSkpCj4+PiAgICAgCQlyZXR1 cm47Cj4+PiAgICAgCj4+PiAtCS8qKgo+Pj4gLQkgKiBUaGUgY2xpZW50IHdpbGwgbm90IHF1ZXVl IG1vcmUgSUJzIGR1cmluZyB0aGlzIGZpbmksIGNvbnN1bWUgZXhpc3RpbmcKPj4+IC0JICogcXVl dWVkIElCcwo+Pj4gLQkqLwo+Pj4gLQl3YWl0X2V2ZW50KHNjaGVkLT5qb2Jfc2NoZWR1bGVkLCBh bWRfc2NoZWRfZW50aXR5X2lzX2lkbGUoZW50aXR5KSk7Cj4+PiAtCj4+PiAgICAgCWFtZF9zY2hl ZF9ycV9yZW1vdmVfZW50aXR5KHJxLCBlbnRpdHkpOwo+Pj4gICAgIAlrZmlmb19mcmVlKCZlbnRp dHktPmpvYl9xdWV1ZSk7Cj4+PiAgICAgfQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuaAo+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vYW1k L3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmgKPj4+IGluZGV4IDhjYjQxZDMuLmNjYmJjYjAgMTAw NjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVy LmgKPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIu aAo+Pj4gQEAgLTQ5LDYgKzQ5LDcgQEAgc3RydWN0IGFtZF9zY2hlZF9lbnRpdHkgewo+Pj4gICAg IAo+Pj4gICAgIAlzdHJ1Y3QgZmVuY2UJCQkqZGVwZW5kZW5jeTsKPj4+ICAgICAJc3RydWN0IGZl bmNlX2NiCQkJY2I7Cj4+PiArCWJvb2wgKnB0cl9ndWlsdHk7Cj4+PiAgICAgfTsKPj4+ICAgICAK Pj4+ICAgICAvKioKPj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KPj4gYW1kLWdmeCBtYWlsaW5nIGxpc3QKPj4gYW1kLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKPj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9h bWQtZ2Z4Cj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xwo+IGFtZC1nZnggbWFpbGluZyBsaXN0Cj4gYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK PiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4 IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK