From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id C5F848919E for ; Tue, 9 Apr 2019 14:50:53 +0000 (UTC) Date: Tue, 9 Apr 2019 16:50:49 +0200 From: Katarzyna Dec Message-ID: <20190409145049.GH12599@kdec5-desk.ger.corp.intel.com> References: <20190409111059.25296-1-janusz.krzysztofik@linux.intel.com> <20190409111059.25296-2-janusz.krzysztofik@linux.intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20190409111059.25296-2-janusz.krzysztofik@linux.intel.com> Subject: Re: [igt-dev] [PATCH v5 1/2] tests: Add a new test for driver/device hot reload List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Janusz Krzysztofik Cc: Petri Latvala , "Lee, Simon B" , igt-dev@lists.freedesktop.org, Daniel Vetter List-ID: T24gVHVlLCBBcHIgMDksIDIwMTkgYXQgMDE6MTA6NThQTSArMDIwMCwgSmFudXN6IEtyenlzenRv ZmlrIHdyb3RlOgo+IEZyb206IEphbnVzeiBLcnp5c3p0b2ZpayA8amFudXN6LmtyenlzenRvZmlr QGludGVsLmNvbT4KPiAKPiBSdW4gYSBkdW1teSBsb2FkIGluIGJhY2tncm91bmQgdG8gcHV0IHNv bWUgd29ya2xvYWQgb24gYSBkZXZpY2UsIHRoZW4gdHJ5Cj4gdG8gZWl0aGVyIHJlbW92ZSAodW5w bHVnKSB0aGUgZGV2aWNlIGZyb20gaXRzIGJ1cywgb3IgdW5iaW5kIHRoZSBkZXZpY2Uncwo+IGRy aXZlciBmcm9tIGl0LCBkZXBlbmRpbmcgb24gd2hpY2ggc3VidGVzdCBoYXMgYmVlbiBzZWxlY3Rl ZC4gIElmCj4gc3VjY2VlZGVkLCB1bmxvYWQgdGhlIGRyaXZlciwgcmVzY2FuIHRoZSBkZXZpY2Un cyBidXMgaWYgbmVlZGVkIGFuZAo+IHBlcmZvcm0gaGVhbHRoIGNoZWNrcyBvbiB0aGUgZGV2aWNl IHdpdGggdGhlIGRyaXZlciByZWxvYWRlZC4KPiAKPiBUaGUgZHVtbXkgbG9hZCBpcyBydW4gZnJv bSBpZ3RfZml4dHVyZSBhbmQgaW4gYSBzdWItcHJvY2Vzcywgbm90IGRpcmVjdGx5Cj4gZnJvbSBz dWJ0ZXN0cywgIGFzIGl0IGlzIGV4cGVjdGVkIHRvIGZhaWwgYW5kIGl0J3MgbW9yZSBzaW1wbGUg dG8gaWdub3JlCj4gaWd0X2Fib3J0KCkgaW4gYSBzdWItcHJvY2Vzcy4gIE1vcmVvdmVyLCBhcyBz b29uIGFzIHRoZSBzdWItcHJvY2VzcyBmYWlscwo+IGFuZCBleGl0cywgcmVzb3VyY2VzIGl0IHdh cyB1c2luZyBhcmUgZnJlZWQgYXV0b21hdGljYWxseSBzbyB0aGVyZSBpcyBubwo+IG5lZWQgdG8g ZG8gYW55IGNsZWFudXBzIHJlcXVpcmVkIGZvciBzbW9vdGggbW9kdWxlIHVubG9hZCBmcm9tIHRo ZSB0ZXN0Cj4gbGV2ZWwgaXRzZWxmLiAgVGhvc2UgY2xlYW51cHMgbWlnaHQgYWxzbyBtYWtlIHRo ZSBzdWJ0ZXN0cyBmYWlsIGlmIHNpbXBseQo+IHVzaW5nIGlndCBsaWJyYXJ5IGZ1bmN0aW9ucyBm b3IgdGhhdCBpbnN0ZWFkIG9mIHJlaW1wbGVtZW50aW5nIHRoZWlyIHNhZmUKPiBwYXJ0cyBvbmx5 Lgo+IAo+IFRoZSBkcml2ZXIgaG90IHVuYmluZCAvIGRldmljZSBob3QgdW5wbHVnIG9wZXJhdGlv biBpcyBleHBlY3RlZCB0byBzdWNjZWVkCj4gYW5kIHRoZSBiYWNrZ3JvdW5kIHdvcmtsb2FkIHN1 Yi1wcm9jZXNzIHRvIGRpZSBpbiBhIHJlYXNvbmFibGUgdGltZSwKPiBob3dldmVyIGxvbmcgdGlt ZW91dHMgYXJlIHVzZWQgdG8gbGV0IGtlcm5lbCBsZXZlbCB0aW1lb3V0cyBwb3AgdXAgZmlyc3QK PiBpZiBoaXQgYnkgYSBidWcuCj4gCj4gVGhlIGR1bW15IGxvYWQgd29ya3Mgb25seSBvbiBpOTE1 IGRyaXZlci4gIFRoZSB0ZXN0IGlzIHNraXBwZWQgb24gb3RoZXIKPiBoYXJkd2FyZSB1bmxlc3Mg dGhleSBwcm92aWRlIHRoZWlyIGltcGxlbWVudGF0aW9uIG9mIGlndF9zcGluX2JhdGNoX25ldygp Cj4gYW5kIGZyaWVuZHMuCj4gCj4gU2lnbmVkLW9mZi1ieTogSmFudXN6IEtyenlzenRvZmlrIDxq YW51c3oua3J6eXN6dG9maWtAaW50ZWwuY29tPgo+IC0tLQo+ICB0ZXN0cy9NYWtlZmlsZS5zb3Vy Y2VzICB8ICAgMSArCj4gIHRlc3RzL2NvcmVfaG90X3JlbG9hZC5jIHwgMjU2ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgdGVzdHMvbWVzb24uYnVpbGQgICAgICAg fCAgIDEgKwo+ICAzIGZpbGVzIGNoYW5nZWQsIDI1OCBpbnNlcnRpb25zKCspCj4gIGNyZWF0ZSBt b2RlIDEwMDY0NCB0ZXN0cy9jb3JlX2hvdF9yZWxvYWQuYwo+IAo+IGRpZmYgLS1naXQgYS90ZXN0 cy9NYWtlZmlsZS5zb3VyY2VzIGIvdGVzdHMvTWFrZWZpbGUuc291cmNlcwo+IGluZGV4IDIxNDY5 OGRhLi5kMmMwOTQxZCAxMDA2NDQKPiAtLS0gYS90ZXN0cy9NYWtlZmlsZS5zb3VyY2VzCj4gKysr IGIvdGVzdHMvTWFrZWZpbGUuc291cmNlcwo+IEBAIC0xNiw2ICsxNiw3IEBAIFRFU1RTX3Byb2dz ID0gXAo+ICAJY29yZV9nZXRjbGllbnQgXAo+ICAJY29yZV9nZXRzdGF0cyBcCj4gIAljb3JlX2dl dHZlcnNpb24gXAo+ICsJY29yZV9ob3RfcmVsb2FkIFwKPiAgCWNvcmVfc2V0bWFzdGVyX3ZzX2F1 dGggXAo+ICAJZGVidWdmc190ZXN0IFwKPiAgCWRybV9pbXBvcnRfZXhwb3J0IFwKPiBkaWZmIC0t Z2l0IGEvdGVzdHMvY29yZV9ob3RfcmVsb2FkLmMgYi90ZXN0cy9jb3JlX2hvdF9yZWxvYWQuYwo+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAuLmQ4NjJjOTljCj4gLS0tIC9k ZXYvbnVsbAo+ICsrKyBiL3Rlc3RzL2NvcmVfaG90X3JlbG9hZC5jCj4gQEAgLTAsMCArMSwyNTYg QEAKPiArLyoKPiArICogQ29weXJpZ2h0IMKpIDIwMTkgSW50ZWwgQ29ycG9yYXRpb24KPiArICoK PiArICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFu eSBwZXJzb24gb2J0YWluaW5nIGEKPiArICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3Nv Y2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwKPiArICogdG8gZGVh bCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQg bGltaXRhdGlvbgo+ICsgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwg cHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKPiArICogYW5kL29yIHNlbGwgY29waWVz IG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlCj4gKyAq IFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5n IGNvbmRpdGlvbnM6Cj4gKyAqCj4gKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0 aGlzIHBlcm1pc3Npb24gbm90aWNlIChpbmNsdWRpbmcgdGhlIG5leHQKPiArICogcGFyYWdyYXBo KSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25z IG9mIHRoZQo+ICsgKiBTb2Z0d2FyZS4KPiArICoKPiArICogVEhFIFNPRlRXQVJFIElTIFBST1ZJ REVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKPiAr ICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBP RiBNRVJDSEFOVEFCSUxJVFksCj4gKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF IEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAo+ICsgKiBUSEUgQVVUSE9S UyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBP UiBPVEhFUgo+ICsgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNU LCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORwo+ICsgKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09O TkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTCj4g KyAqIElOIFRIRSBTT0ZUV0FSRS4KPiArICovCj4gKwo+ICsjaW5jbHVkZSAiaWd0LmgiCj4gKyNp bmNsdWRlICJpZ3RfZGV2aWNlLmgiCj4gKyNpbmNsdWRlICJpZ3RfZHVtbXlsb2FkLmgiCj4gKyNp bmNsdWRlICJpZ3Rfa21vZC5oIgo+ICsjaW5jbHVkZSAiaWd0X3N5c2ZzLmgiCj4gKwo+ICsjaW5j bHVkZSA8Z2V0b3B0Lmg+Cj4gKyNpbmNsdWRlIDxsaW1pdHMuaD4KPiArI2luY2x1ZGUgPHN0cmlu Zy5oPgo+ICsjaW5jbHVkZSA8dW5pc3RkLmg+Cj4gKwo+ICsKPiArdHlwZWRlZiBpbnQgKCphY3Rp b25fdCkoaW50IGRpcik7Cj4gK3R5cGVkZWYgdm9pZCAoKndvcmtsb2FkX3dhaXRfdCkodm9pZCAq cHJpdik7Cj4gK3R5cGVkZWYgdm9pZCAoKndvcmtsb2FkX3QpKGludCBkZXZpY2UsIGNvbnN0IHZv aWQgKnByaXYpOwo+ICsKPiArCj4gKy8qCj4gKyAqIEFjdGlvbnMKPiArICoKPiArICogUHVycG9z ZTogbWFrZSB0aGUgZGV2aWNlIGRpc2FwcGVhcgo+ICsgKgo+ICsgKiBAZGlyOiBmaWxlIGRlc2Ny aXB0b3Igb2YgYW4gb3BlbiBkZXZpY2Ugc3lzZnMgZGlyZWN0b3J5Cj4gKyAqCj4gKyAqIFJldHVy biB2YWx1ZTogZmlsZSBkZXNjcmlwdG9yIG9mIGFuIG9wZW4gZGV2aWNlIGJ1cycgc3lzZnMgZGly ZWN0b3J5Cj4gKyAqIAkJIG9yIC0xIGlmIG5vIGJ1cyByZXNjYW4gaXMgbmVlZGVkCj4gKyAqLwo+ ICsKPiArLyogVW5iaW5kIHRoZSBkcml2ZXIgZnJvbSB0aGUgZGV2aWNlICovCkkgYW0gZ2xhZCB0 aGF0IG1vcmUgZG9jdW1lbnRhdGlvbiBoYWQgY29tZS4gSSB3b3VsZCBvbmx5IHByZWZlciB0byBo YXZlIGl0CnNvbWVob3cgY29uc2lzdGVudCBmb3IgZnVuY3Rpb25zIGluIHdob2xlIGJpbmFyeSAt IHBsZWFzZSBoYXZlIGVpdGhlcjoKLyoqCiAqIG5hbWU6CiAqIHZhcmlhYmxlcwogKiAKICogUmV0 dXJuIHZhbHVlcwogKi8Kb3Igc2ltcGxlIGNvbW1lbnRzIC8qICovCkJ1dCB0aGlzIGlzIGp1c3Qg YSB0aW55IHRoaW5nIDopCj4gK3N0YXRpYyBpbnQgZHJpdmVyX3VuYmluZChpbnQgZGlyKQo+ICt7 Cj4gKwljaGFyIHBhdGhbUEFUSF9NQVhdLCAqZGV2X2J1c19hZGRyOwo+ICsJaW50IGxlbjsKPiAr Cj4gKwlsZW4gPSByZWFkbGlua2F0KGRpciwgImRldmljZSIsIHBhdGgsIHNpemVvZihwYXRoKSAt IDEpOwo+ICsJcGF0aFtsZW5dID0gJ1wwJzsKPiArCWRldl9idXNfYWRkciA9IHN0cnJjaHIocGF0 aCwgJy8nKSArIDE7Cj4gKwo+ICsJaWd0X3NldF90aW1lb3V0KDYwLCAiRHJpdmVyIHVuYmluZCB0 aW1lb3V0ISIpOwo+ICsJaWd0X3N5c2ZzX3NldChkaXIsICJkZXZpY2UvZHJpdmVyL3VuYmluZCIs IGRldl9idXNfYWRkcik7Cj4gKwo+ICsJLyogTm8gbmVlZCBmb3IgYnVzIHJlc2NhbiAqLwo+ICsJ cmV0dXJuIC0xOwpJbiBkb2MgYWJvdmUgeW91IHdyb3RlIHRoYXQgdGhpcyBmdW5jdGlvbnMgcmV0 dXJucyAtMSBvciBmZCBvZiB0aGUgZGV2aWNlLiBJdCBpcwpwb3NzaWJsZSB0aGF0IEkgYW0gd3Jv bmcsIGJ1dCBJIGRvIG5vdCBzZWUgZmQgcmV0dXJuZWQgKGF0IGxlYXN0IG5vdApleHBsaWNpdGx5 KS4KXl5eXiBTbyB0aGlzIHdhcyBteSBjb21tZW50IGJlZm9yZSBJIHJlYWQgY2FyZWZ1bGx5IGxh dGVyIG9uLiBTbyBpdCBsb29rcyBsaWtlCmRvYyBpcyB3cm9uZywgYW5kIHlvdSByZXR1cm4gLTEg YW5kIG5vdGhpbmcgZWxzZS4gV2h5IGRvIHdlIG5lZWQgdG8gcmV0dXJuIGEKY29uc3QgaGVyZT8g TWF5YmUgd2UgY2FuIHJldHVybiB2YWx1ZSBmcm9tIGlndF9zeXNmc19zZXQ/Cj4gK30KPiArCj4g Ky8qIFJlbW92ZSAodmlydHVhbGx5IHVucGx1ZykgdGhlIGRldmljZSBmcm9tIGl0cyBidXMgKi8K PiArc3RhdGljIGludCBkZXZpY2VfdW5wbHVnKGludCBkaXIpCj4gK3sKPiArCWludCBidXM7Cj4g Kwo+ICsJYnVzID0gb3BlbmF0KGRpciwgImRldmljZS9zdWJzeXN0ZW0iLCBPX0RJUkVDVE9SWSk7 Cj4gKwlpZ3RfYXNzZXJ0KGJ1cyA+PSAwKTsKPiArCj4gKwlpZ3Rfc2V0X3RpbWVvdXQoNjAsICJE ZXZpY2UgdW5wbHVnIHRpbWVvdXQhIik7Cj4gKwlpZ3Rfc3lzZnNfc2V0KGRpciwgImRldmljZS9y ZW1vdmUiLCAiMSIpOwo+ICsKPiArCXJldHVybiBidXM7Cj4gK30KPiArCj4gKwo+ICsvKgo+ICsg KiBXb3JrbG9hZHMKPiArICoKPiArICogUHVycG9zZTogUHV0IHNvbWUgbG9uZyBsYXN0aW5nIGxv YWQgb24gdGhlIGRldmljZQo+ICsgKgo+ICsgKiBAZGV2aWNlOiBvcGVuIGRldmljZSBmaWxlIGRl c2NyaXB0b3IsCj4gKyAqIEBwcml2OiBwb2ludGVyIHRvIGFuIG9wdGlvbmFsIGFyZ3VtZW50IHBh c3NlZCB0byB0aGUgd29ya2xvYWQKPiArICoKPiArICogUmV0dXJuIHZhbHVlOiBub25lCj4gKyAq Lwo+ICsKPiArLyogV29ya2xvYWQgdXNpbmcgaWd0X3NwaW5fYmF0Y2hfcnVuKCkgKi8KPiArCj4g K3N0YXRpYyB2b2lkIHNwaW5fYmF0Y2goaW50IGRldmljZSwgY29uc3Qgdm9pZCAqcHJpdikKPiAr ewo+ICsJaWd0X3NwaW5fdCAqc3BpbjsKPiArCj4gKwkvKiBzdWJtaXQgdGhlIGpvYiAqLwo+ICsJ c3BpbiA9IGlndF9zcGluX2JhdGNoX25ldyhkZXZpY2UpOwo+ICsKPiArCS8qIHdhaXQgZm9yIHRo ZSBqb2IgdG8gY3Jhc2ggKi8KPiArCWdlbV9zeW5jKGRldmljZSwgc3Bpbi0+aGFuZGxlKTsKPiAr Cj4gKwkvKiBjbGVhbiB1cCBpZiBzdGlsbCBwb3NzaWJsZSAqLwo+ICsJaWd0X3NwaW5fYmF0Y2hf ZnJlZShkZXZpY2UsIHNwaW4pOwo+ICt9Cj4gKwo+ICsKPiArLyoKPiArICogU2tlbGV0b24KPiAr ICovCj4gKwo+ICtzdGF0aWMgdm9pZCBoZWFsdGhjaGVjayhpbnQgY2hpcHNldCkKPiArewo+ICsJ aWYgKGNoaXBzZXQgPT0gRFJJVkVSX0lOVEVMKSB7Cj4gKwkJLyoKPiArCQkgKiBXZSBoYXZlIGl0 IHBlcmZlY3RseSBpbXBsZW1lbnRlZCBpbiBpOTE1X21vZHVsZV9sb2FkLAo+ICsJCSAqIGp1c3Qg dXNlIGl0Lgo+ICsJCSAqLwo+ICsJCWlndF9hc3NlcnQoaWd0X3N5c3RlbV9xdWlldCgiaTkxNV9t b2R1bGVfbG9hZCAtLXJ1bi1zdWJ0ZXN0IHJlbG9hZCIpCj4gKwkJCSAgID09IElHVF9FWElUX1NV Q0NFU1MpOwo+ICsJfSBlbHNlIHsKPiArCQkvKgo+ICsJCSAqIFdlIGRvbid0IGtub3cgaG93IHRv IGNoZWNrIGFuIHVuaWRlbnRpZmllZCBkZXZpY2UgZm9yIGhlYWx0aCwKPiArCQkgKiBkZXZpY2Ug cmVvcGVuIG11c3Qgc3VmZmljZS4KPiArCQkgKi8KPiArCX0KSnVzdCBhIHF1ZXN0aW9uIC0gbWF5 YmUgd2UgY2FuIGFkZCBzb21ldGhpbmcgbGlrZSAnaWd0X3NraXBfb24oIURSSVZFUl9JTlRFTCk/ CndpdGggc2FtZSBjb21tZW50IGFzIGluIGVsc2Ugc3RhdGVtZW50PwpJdCBpcyBvbmx5IGFub3Ro ZXIgYXBwcm9hY2ggOikKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgZHJpdmVyX3VubG9hZChpbnQg Y2hpcHNldCwgY2hhciAqZHJpdmVyKQo+ICt7Cj4gKwlpZiAoY2hpcHNldCA9PSBEUklWRVJfSU5U RUwpCj4gKwkJaWd0X2Fzc2VydChpZ3RfaTkxNV9kcml2ZXJfdW5sb2FkKCkgPT0gSUdUX0VYSVRf U1VDQ0VTUyk7Cj4gKwllbHNlCj4gKwkJaWd0X2Fzc2VydChpZ3Rfa21vZF91bmxvYWQoZHJpdmVy LCAwKSA9PSAwKTsKPiArfQo+ICsKPiArc3RhdGljIGludCBvcGVyYXRpb24oaW50IGRldmljZSwg YWN0aW9uX3QgYWN0aW9uLCB3b3JrbG9hZF93YWl0X3Qgd29ya2xvYWRfd2FpdCwKPiArCQkgICAg IHZvaWQgKndvcmtsb2FkX3ByaXYpCj4gK3sKPiArCWludCBkaXIsIGJ1czsKPiArCj4gKwlkaXIg PSBpZ3Rfc3lzZnNfb3BlbihkZXZpY2UpOwo+ICsKPiArCWJ1cyA9IGFjdGlvbihkaXIpOwo+ICsJ Y2xvc2UoZGlyKTsKPiArCj4gKwlpZiAod29ya2xvYWRfd2FpdCkKPiArCQl3b3JrbG9hZF93YWl0 KHdvcmtsb2FkX3ByaXYpOwo+ICsJaWd0X3Jlc2V0X3RpbWVvdXQoKTsKPiArCj4gKwlyZXR1cm4g YnVzOwo+ICt9Cj4gKwo+ICsKPiArc3RhdGljIHZvaWQgX19zdWJ0ZXN0KGludCBkZXZpY2UsIGlu dCBjaGlwc2V0LCBjaGFyICpkcml2ZXIsIGFjdGlvbl90IGFjdGlvbiwKPiArCQkgICAgICB3b3Jr bG9hZF93YWl0X3Qgd29ya2xvYWRfd2FpdCwgdm9pZCAqd29ya2xvYWRfcHJpdikKPiArewo+ICsJ aW50IGJ1cyA9IG9wZXJhdGlvbihkZXZpY2UsIGFjdGlvbiwgd29ya2xvYWRfd2FpdCwgd29ya2xv YWRfcHJpdik7Cj4gKwo+ICsJY2xvc2UoZGV2aWNlKTsKPiArCWRyaXZlcl91bmxvYWQoY2hpcHNl dCwgZHJpdmVyKTsKPiArCj4gKwkvKiBWYWxpZCBmaWxlIGRlc2NyaXB0b3IgaW5kaWNhdGVzIHdl IHNob3VsZCByZXNjYW4gdGhlIGJ1cyAqLwo+ICsJaWYgKGJ1cyA+PSAwKSB7Cj4gKwkJaWd0X3N5 c2ZzX3NldChidXMsICJyZXNjYW4iLCAiMSIpOwo+ICsJCWNsb3NlKGJ1cyk7Cj4gKwl9Cj4gK30K PiArCj4gK3N0YXRpYyB2b2lkIHJ1bl9zdWJ0ZXN0KGludCAqZGV2aWNlLCBpbnQgY2hpcHNldCwg Y2hhciAqZHJpdmVyLCBhY3Rpb25fdCBhY3Rpb24sCj4gKwkJCXdvcmtsb2FkX3dhaXRfdCB3b3Jr bG9hZF93YWl0LCB2b2lkICp3b3JrbG9hZF9wcml2KQo+ICt7Cj4gKwlfX3N1YnRlc3QoKmRldmlj ZSwgY2hpcHNldCwgZHJpdmVyLCBhY3Rpb24sIHdvcmtsb2FkX3dhaXQsIHdvcmtsb2FkX3ByaXYp Owo+ICsKPiArCWhlYWx0aGNoZWNrKGNoaXBzZXQpOwo+ICsKPiArCSpkZXZpY2UgPSBfX2RybV9v cGVuX2RyaXZlcihjaGlwc2V0KTsKPiArCWlndF9hc3NlcnQoKmRldmljZSA+PSAwKTsKPiArfQo+ ICsKPiArc3RhdGljIHZvaWQgX193b3JrbG9hZCh3b3JrbG9hZF90IHdvcmtsb2FkLCBpbnQgZGV2 aWNlLCBjb25zdCB2b2lkICpwcml2LAo+ICsJCSAgICAgIHN0cnVjdCBpZ3RfaGVscGVyX3Byb2Nl c3MgKnByb2MpCj4gK3sKPiArCWlndF9mb3JrX2hlbHBlcihwcm9jKQo+ICsJCXdvcmtsb2FkKGRl dmljZSwgcHJpdik7Cj4gKwkvKiBsZXQgdGhlIGJhY2tncm91bmQgcHJvY2VzcyBzdGFydCBkb2lu ZyBpdHMgam9iICovCj4gKwlzbGVlcCgyKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgX193b3Jr bG9hZF93YWl0KHZvaWQgKnByaXYpCj4gK3sKPiArCXN0cnVjdCBpZ3RfaGVscGVyX3Byb2Nlc3Mg KnByb2MgPSBwcml2Owo+ICsKPiArCS8qIHdhaXQgdW50aWwgdGhlIHdvcmtsb2FkIGhhcyBjcmFz aGVkICovCj4gKwlpZ3Rfd2FpdF9oZWxwZXIocHJvYyk7Cj4gK30KPiArCj4gKwo+ICtpZ3RfbWFp biB7Cj4gKwlpbnQgZGV2aWNlLCBjaGlwc2V0Owo+ICsJY2hhciAqZHJpdmVyOwo+ICsJc3RydWN0 IGlndF9oZWxwZXJfcHJvY2VzcyBwcm9jID0ge307Cj4gKwl3b3JrbG9hZF93YWl0X3Qgd29ya2xv YWRfd2FpdDsKPiArCXZvaWQgKndvcmtsb2FkX3ByaXY7Cj4gKwo+ICsJaWd0X2ZpeHR1cmUgewo+ ICsJCWNoYXIgcGF0aFtQQVRIX01BWF07Cj4gKwkJaW50IGRpciwgbGVuOwo+ICsKPiArCQkvKgo+ ICsJCSAqIFNpbmNlIHRoZSB0ZXN0IGRlcGVuZHMgb24gc3VjY2Vzc2Z1bCB1bmxvYWQgb2YgZHJp dmVyIG1vZHVsZSwKPiArCQkgKiBkb24ndCB1c2UgZHJtX29wZW5fZHJpdmVyKCkgYXMgaXQga2Vl cHMgYSBmaWxlIGRlc2NyaXB0b3IKPiArCQkgKiBvcGVuIGZvciBleGl0IGhhbmRsZXIgdXNlIHRo YXQgZWZmZWN0aXZlbHkgbG9ja3MgdGhlIG1vZHVsZS4KPiArCQkgKi8KPiArCQlkZXZpY2UgPSBf X2RybV9vcGVuX2RyaXZlcihEUklWRVJfQU5ZKTsKPiArCQlpZ3RfYXNzZXJ0KGRldmljZSA+PSAw KTsKPiArCj4gKwkJaWYgKGlzX2k5MTVfZGV2aWNlKGRldmljZSkpIHsKPiArCQkJY2hpcHNldCA9 IERSSVZFUl9JTlRFTDsKPiArCQkJZHJpdmVyID0gc3RyZHVwKCJpOTE1Iik7Cj4gKwkJfSBlbHNl IHsKPiArCQkJY2hpcHNldCA9IERSSVZFUl9BTlk7Cj4gKwo+ICsJCQkvKiBDYXB0dXJlIG1vZHVs ZSBuYW1lIHRvIGJlIHVubG9hZGVkICovCj4gKwkJCWRpciA9IGlndF9zeXNmc19vcGVuKGRldmlj ZSk7Cj4gKwkJCWxlbiA9IHJlYWRsaW5rYXQoZGlyLCAiZGV2aWNlL2RyaXZlci9tb2R1bGUiLCBw YXRoLAo+ICsJCQkJCSBzaXplb2YocGF0aCkgLSAxKTsKPiArCQkJY2xvc2UoZGlyKTsKPiArCQkJ cGF0aFtsZW5dID0gJ1wwJzsKPiArCQkJZHJpdmVyID0gc3RyZHVwKHN0cnJjaHIocGF0aCwgJy8n KSArIDEpOwo+ICsJCX0KPiArCQlpZ3RfaW5mbygiUnVubmluZyB0aGUgdGVzdCBvbiBkcml2ZXIg XCIlc1wiLCBjaGlwc2V0IG1hc2sgJSMweFxuIiwKPiArCQkJIGRyaXZlciwgY2hpcHNldCk7Cj4g Kwo+ICsJCXdvcmtsb2FkX3dhaXQgPSBfX3dvcmtsb2FkX3dhaXQ7Cj4gKwkJd29ya2xvYWRfcHJp diA9ICZwcm9jOwo+ICsJCV9fd29ya2xvYWQoc3Bpbl9iYXRjaCwgZGV2aWNlLCBOVUxMLCAmcHJv Yyk7Cj4gKwl9Cj4gKwo+ICsJaWd0X3N1YnRlc3QoInVucGx1ZyIpCj4gKwkJcnVuX3N1YnRlc3Qo JmRldmljZSwgY2hpcHNldCwgZHJpdmVyLCBkZXZpY2VfdW5wbHVnLAo+ICsJCQkgICAgd29ya2xv YWRfd2FpdCwgd29ya2xvYWRfcHJpdik7Cj4gKwo+ICsJaWd0X3N1YnRlc3QoInVuYmluZCIpCj4g KwkJcnVuX3N1YnRlc3QoJmRldmljZSwgY2hpcHNldCwgZHJpdmVyLCBkcml2ZXJfdW5iaW5kLAo+ ICsJCQkgICAgd29ya2xvYWRfd2FpdCwgd29ya2xvYWRfcHJpdik7Cj4gKwo+ICsJaWd0X2ZpeHR1 cmUgewo+ICsJCWZyZWUoZHJpdmVyKTsKPiArCQljbG9zZShkZXZpY2UpOwo+ICsJfQo+ICt9Ckdl bmVyYWxseSBldmVyeXRoaW5nIGxvb2tzIG9rLiBGZXcgZml4ZXMgYW5kIHRoaXMgY2FuIGJlIGl0 LgpJIHJlYWxseSBsaWtlIHlvdSBhcHByb2FjaCB3aXRoIHRlc3QgYnVpbGRpbmcgYmxvY2tzLgoK S2FzaWEKPiBkaWZmIC0tZ2l0IGEvdGVzdHMvbWVzb24uYnVpbGQgYi90ZXN0cy9tZXNvbi5idWls ZAo+IGluZGV4IDUxNjdhNmNjLi4xYjkxZTVhMiAxMDA2NDQKPiAtLS0gYS90ZXN0cy9tZXNvbi5i dWlsZAo+ICsrKyBiL3Rlc3RzL21lc29uLmJ1aWxkCj4gQEAgLTMsNiArMyw3IEBAIHRlc3RfcHJv Z3MgPSBbCj4gIAknY29yZV9nZXRjbGllbnQnLAo+ICAJJ2NvcmVfZ2V0c3RhdHMnLAo+ICAJJ2Nv cmVfZ2V0dmVyc2lvbicsCj4gKwknY29yZV9ob3RfcmVsb2FkJywKPiAgCSdjb3JlX3NldG1hc3Rl cl92c19hdXRoJywKPiAgCSdkZWJ1Z2ZzX3Rlc3QnLAo+ICAJJ2RybV9pbXBvcnRfZXhwb3J0JywK PiAtLSAKPiAyLjIwLjEKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2