From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: Re: [igt-dev] [PATCH i-g-t 2/3] tests/gem_eio: Speed up test execution Date: Thu, 22 Mar 2018 11:39:15 +0000 Message-ID: <152171875518.23562.12227602056261860847@mail.alporthouse.com> References: <20180322111712.9056-1-tvrtko.ursulin@linux.intel.com> <20180322111712.9056-2-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180322111712.9056-2-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tvrtko Ursulin , igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org UXVvdGluZyBUdnJ0a28gVXJzdWxpbiAoMjAxOC0wMy0yMiAxMToxNzoxMSkKPiBGcm9tOiBUdnJ0 a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+IAo+IElmIHdlIHN0b3AgcmVs eWluZyBvbiByZWd1bGFyIEdQVSBoYW5ncyB0byBiZSBkZXRlY3RlZCwgYnV0IHRyaWdnZXIgdGhl bQo+IG1hbnVhbGx5IGFzIHNvb24gYXMgd2Uga25vdyBvdXIgYmF0Y2ggb2YgaW50ZXJlc3QgaXMg YWN0dWFsbHkgZXhlY3V0aW5nCj4gb24gdGhlIEdQVSwgd2UgY2FuIGRyYW1hdGljYWxseSBzcGVl ZCB1cCB2YXJpb3VzIHN1YnRlc3RzLgo+IAo+IFRoaXMgaXMgZW5hYmxlZCBieSB0aGUgcG9sbGFi bGUgc3BpbiBiYXRjaCBhZGRlZCBpbiB0aGUgcHJldmlvdXMgcGF0Y2guCj4gCj4gU2lnbmVkLW9m Zi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPiBTdWdnZXN0 ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IENjOiBBbnRv bmlvIEFyZ2Vuemlhbm8gPGFudG9uaW8uYXJnZW56aWFub0BpbnRlbC5jb20+Cj4gLS0tCj4gTm90 ZSB0aGF0IHRoZSAnd2FpdCcgc3VidGVzdCBpcyBteXN0ZXJpb3VzbHkgaGFuZ2luZyBmb3IgbWUg aW4gdGhlIG5vLW9wCj4gYmF0Y2ggc2VuZCBieSBnZW1fdGVzdF9lbmdpbmVzLCBidXQgb25seSBv biBSQ1MgZW5naW5lLiBUQkQgd2hpbGUgSSBhbQo+IGdldHRpbmcgc29tZSBDSSByZXN1bHRzLgo+ IC0tLQo+ICBsaWIudGFyICAgICAgICAgfCBCaW4gMCAtPiAxMDI0MDAgYnl0ZXMKPiAgdGVzdHMv Z2VtX2Vpby5jIHwgIDk3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tCj4gIDIgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgMjcg ZGVsZXRpb25zKC0pCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIudGFyCj4gCj4gZGlmZiAtLWdp dCBhL2xpYi50YXIgYi9saWIudGFyCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYTA0ZmFkMjE5YTg3ZjJlOTc1 ODUyOTg5NTI2ZjhkYTRjOWI3ZDZkCj4gR0lUIGJpbmFyeSBwYXRjaAo+IGxpdGVyYWwgMTAyNDAw Cj4gemNtZUh3PnZrSlFsQldNc1BmPSF7a3dKPWdVQWtNQUpjM0EyIWtQclFBU0FXTTw1TEYmM001 NyNmV30zWCtWO0g5CgpMb29rcyBjb3JyZWN0LgoKPiBkaWZmIC0tZ2l0IGEvdGVzdHMvZ2VtX2Vp by5jIGIvdGVzdHMvZ2VtX2Vpby5jCj4gaW5kZXggNGJjYzU5MzdkYjM5Li45MzQwMDA1NjEyNGIg MTAwNjQ0Cj4gLS0tIGEvdGVzdHMvZ2VtX2Vpby5jCj4gKysrIGIvdGVzdHMvZ2VtX2Vpby5jCj4g QEAgLTcxLDI2ICs3MSwyMyBAQCBzdGF0aWMgdm9pZCB0cmlnZ2VyX3Jlc2V0KGludCBmZCkKPiAg ICAgICAgIGdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKPiAgfQo+ICAKPiAtc3RhdGljIHZvaWQgd2Vk Z2VfZ3B1KGludCBmZCkKPiArc3RhdGljIHZvaWQgbWFudWFsX2hhbmcoaW50IGRybV9mZCkKPiAg ewo+IC0gICAgICAgLyogRmlyc3QgaWRsZSB0aGUgR1BVIHRoZW4gZGlzYWJsZSBHUFUgcmVzZXRz IGJlZm9yZSBpbmplY3RpbmcgYSBoYW5nICovCj4gLSAgICAgICBnZW1fcXVpZXNjZW50X2dwdShm ZCk7Cj4gLQo+IC0gICAgICAgaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7 Cj4gKyAgICAgICBpbnQgZGlyID0gaWd0X2RlYnVnZnNfZGlyKGRybV9mZCk7Cj4gIAo+IC0gICAg ICAgaWd0X2RlYnVnKCJXZWRnaW5nIEdQVSBieSBpbmplY3RpbmcgaGFuZ1xuIik7Cj4gLSAgICAg ICBpZ3RfcG9zdF9oYW5nX3JpbmcoZmQsIGlndF9oYW5nX3JpbmcoZmQsIEk5MTVfRVhFQ19ERUZB VUxUKSk7Cj4gKyAgICAgICBpZ3Rfc3lzZnNfc2V0KGRpciwgImk5MTVfd2VkZ2VkIiwgIi0xIik7 Cj4gIAo+IC0gICAgICAgaWd0X2Fzc2VydChpOTE1X3Jlc2V0X2NvbnRyb2wodHJ1ZSkpOwo+ICsg ICAgICAgY2xvc2UoZGlyKTsKPiAgfQoKT2suCgo+IC1zdGF0aWMgdm9pZCB3ZWRnZW1lKGludCBk cm1fZmQpCj4gK3N0YXRpYyB2b2lkIHdlZGdlX2dwdShpbnQgZmQpCj4gIHsKPiAtICAgICAgIGlu dCBkaXIgPSBpZ3RfZGVidWdmc19kaXIoZHJtX2ZkKTsKPiAtCj4gLSAgICAgICBpZ3Rfc3lzZnNf c2V0KGRpciwgImk5MTVfd2VkZ2VkIiwgIi0xIik7Cj4gKyAgICAgICAvKiBGaXJzdCBpZGxlIHRo ZSBHUFUgdGhlbiBkaXNhYmxlIEdQVSByZXNldHMgYmVmb3JlIGluamVjdGluZyBhIGhhbmcgKi8K PiArICAgICAgIGdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKPiAgCj4gLSAgICAgICBjbG9zZShkaXIp Owo+ICsgICAgICAgaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7Cj4gKyAg ICAgICBtYW51YWxfaGFuZyhmZCk7Cj4gKyAgICAgICBpZ3RfYXNzZXJ0KGk5MTVfcmVzZXRfY29u dHJvbCh0cnVlKSk7Cj4gIH0KCk9rLgoKPiAgCj4gIHN0YXRpYyBpbnQgX19nZW1fdGhyb3R0bGUo aW50IGZkKQo+IEBAIC0xNDksMjkgKzE0Niw2NiBAQCBzdGF0aWMgaW50IF9fZ2VtX3dhaXQoaW50 IGZkLCB1aW50MzJfdCBoYW5kbGUsIGludDY0X3QgdGltZW91dCkKPiAgICAgICAgIHJldHVybiBl cnI7Cj4gIH0KPiAgCj4gK3N0YXRpYyBpZ3Rfc3Bpbl90ICogX19zcGluX3BvbGwoaW50IGZkLCB1 aW50MzJfdCBjdHgsIHVuc2lnbmVkIGxvbmcgZmxhZ3MpCj4gK3sKPiArICAgICAgIGlmIChnZW1f Y2FuX3N0b3JlX2R3b3JkKGZkLCBmbGFncykpCj4gKyAgICAgICAgICAgICAgIHJldHVybiBfX2ln dF9zcGluX2JhdGNoX25ld19wb2xsKGZkLCBjdHgsIGZsYWdzKTsKPiArICAgICAgIGVsc2UKPiAr ICAgICAgICAgICAgICAgcmV0dXJuIF9faWd0X3NwaW5fYmF0Y2hfbmV3KGZkLCBjdHgsIGZsYWdz LCAwKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgX19zcGluX3dhaXQoaW50IGZkLCBpZ3Rfc3Bp bl90ICpzcGluKQo+ICt7Cj4gKyAgICAgICBpZiAoc3Bpbi0+cnVubmluZykgewo+ICsgICAgICAg ICAgICAgICB3aGlsZSAoISooKHZvbGF0aWxlIGJvb2wgKilzcGluLT5ydW5uaW5nKSkKPiArICAg ICAgICAgICAgICAgICAgICAgICA7Cj4gKyAgICAgICB9IGVsc2Ugewo+ICsgICAgICAgICAgICAg ICBpZ3RfZGVidWcoIl9fc3Bpbl93YWl0IC0gdXNsZWVwIG1vZGVcbiIpOwo+ICsgICAgICAgICAg ICAgICB1c2xlZXAoNTAwZTMpOyAvKiBCZXR0ZXIgdGhhbiBub3RoaW5nISAqLwo+ICsgICAgICAg fQo+ICt9Cj4gKwo+ICsvKgo+ICsgKiBXZWRnZSB0aGUgR1BVIHdoZW4gd2Uga25vdyBvdXIgYmF0 Y2ggaXMgcnVubmluZy4KPiArICovCj4gK3N0YXRpYyB2b2lkIHdlZGdlX2FmdGVyX3J1bm5pbmco aW50IGZkLCBpZ3Rfc3Bpbl90ICpzcGluKQo+ICt7Cj4gKyAgICAgICBfX3NwaW5fd2FpdChmZCwg c3Bpbik7Cj4gKyAgICAgICBtYW51YWxfaGFuZyhmZCk7Cj4gK30KPiArCj4gIHN0YXRpYyB2b2lk IHRlc3Rfd2FpdChpbnQgZmQpCj4gIHsKPiAtICAgICAgIGlndF9oYW5nX3QgaGFuZzsKPiArICAg ICAgIHN0cnVjdCB0aW1lc3BlYyB0cyA9IHsgfTsKPiArICAgICAgIGlndF9zcGluX3QgKmhhbmc7 Cj4gIAo+ICAgICAgICAgaWd0X3JlcXVpcmVfZ2VtKGZkKTsKPiAgCj4gKyAgICAgICBpZ3RfbnNl Y19lbGFwc2VkKCZ0cyk7Cj4gKwo+ICAgICAgICAgLyogSWYgdGhlIHJlcXVlc3Qgd2Ugd2FpdCBv biBjb21wbGV0ZXMgZHVlIHRvIGEgaGFuZyAoZXZlbiBmb3IKPiAgICAgICAgICAqIHRoYXQgcmVx dWVzdCksIHRoZSB1c2VyIGV4cGVjdHMgdGhlIHJldHVybiB2YWx1ZSB0byAwIChzdWNjZXNzKS4K PiAgICAgICAgICAqLwo+IC0gICAgICAgaGFuZyA9IGlndF9oYW5nX3JpbmcoZmQsIEk5MTVfRVhF Q19ERUZBVUxUKTsKPiAtICAgICAgIGlndF9hc3NlcnRfZXEoX19nZW1fd2FpdChmZCwgaGFuZy5o YW5kbGUsIC0xKSwgMCk7Cj4gLSAgICAgICBpZ3RfcG9zdF9oYW5nX3JpbmcoZmQsIGhhbmcpOwo+ ICsgICAgICAgaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKPiArICAgICAg IGhhbmcgPSBfX3NwaW5fcG9sbChmZCwgMCwgSTkxNV9FWEVDX0RFRkFVTFQpOwo+ICsgICAgICAg d2VkZ2VfYWZ0ZXJfcnVubmluZyhmZCwgaGFuZyk7Cj4gKyAgICAgICBpZ3RfYXNzZXJ0X2VxKF9f Z2VtX3dhaXQoZmQsIGhhbmctPmhhbmRsZSwgLTEpLCAwKTsKPiArICAgICAgIGlndF9zcGluX2Jh dGNoX2ZyZWUoZmQsIGhhbmcpOwoKPiAgCj4gICAgICAgICAvKiBJZiB0aGUgR1BVIGlzIHdlZGdl ZCBkdXJpbmcgdGhlIHdhaXQsIGFnYWluIHdlIGV4cGVjdCB0aGUgcmV0dXJuCj4gICAgICAgICAg KiB2YWx1ZSB0byBiZSAwIChzdWNjZXNzKS4KPiAgICAgICAgICAqLwo+ICAgICAgICAgaWd0X3Jl cXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7Cj4gLSAgICAgICBoYW5nID0gaWd0X2hh bmdfcmluZyhmZCwgSTkxNV9FWEVDX0RFRkFVTFQpOwo+IC0gICAgICAgaWd0X2Fzc2VydF9lcShf X2dlbV93YWl0KGZkLCBoYW5nLmhhbmRsZSwgLTEpLCAwKTsKPiAtICAgICAgIGlndF9wb3N0X2hh bmdfcmluZyhmZCwgaGFuZyk7Cj4gKyAgICAgICBoYW5nID0gX19zcGluX3BvbGwoZmQsIDAsIEk5 MTVfRVhFQ19ERUZBVUxUKTsKPiArICAgICAgIHdlZGdlX2FmdGVyX3J1bm5pbmcoZmQsIGhhbmcp Owo+ICsgICAgICAgaWd0X2Fzc2VydF9lcShfX2dlbV93YWl0KGZkLCBoYW5nLT5oYW5kbGUsIC0x KSwgMCk7Cj4gKyAgICAgICBpZ3Rfc3Bpbl9iYXRjaF9mcmVlKGZkLCBoYW5nKTsKPiAgICAgICAg IGlndF9yZXF1aXJlKGk5MTVfcmVzZXRfY29udHJvbCh0cnVlKSk7CgpIbW0uIFRoZXNlIGFyZSBu b3QgZXF1aXZhbGVudCB0byB0aGUgb3JpZ2luYWwgdGVzdC4gVGhlIHRlc3RzCnJlcXVpcmVzIGhh bmdjaGVjayB0byBraWNrIGluIHdoaWxlIHRoZSB0ZXN0IGlzIGJsb2NrZWQgb24gaWd0X3dhaXQu ClRvIGRvIGEgZmFzdCBlcXVpdmFsZW50LCB3ZSBuZWVkIHRvIGtpY2sgb2ZmIGEgdGltZXIuIChI ZXJlIHdlIGFyZSBqdXN0CmFza2luZyBpZiBhIHdhaXQgb24gYW4gYWxyZWFkeSBjb21wbGV0ZWQg cmVxdWVzdCBkb2Vzbid0IGJsb2NrLCBub3QgaG93CndlIGhhbmRsZSB0aGUgcmVzZXQgaW4gdGhl IG1pZGRsZSBvZiBhIHdhaXQuIFNlZW1zIGEgcmVhc29uYWJsZSBhZGRpdGlvbgp0aG91Z2guKQoK SSB0aGluayB0aGF0J3MgYSBnZW5lcmFsIHBhdHRlcm4gd29ydGggcmVwZWF0aW5nIGZvciB0aGUg cmVzdCBvZiB0ZXN0czoKZG9uJ3QgaW1tZWRpYXRlbHkgaW5qZWN0IHRoZSBoYW5nLCBidXQgbGVh dmUgaXQgYSBmZXcgbWlsbGlzZWNvbmRzIHRvCmFsbG93IHVzIHRvIGJsb2NrIG9uIHRoZSBzdWJz ZXF1ZW50IHdhaXQuIEkgd291bGQgZXZlbiByZXBlYXQgdGhlIHRlc3RzCmEgZmV3IHRpbWVzIHdp dGggZGlmZmVyZW50IHRpbWVvdXRzOyAwLCAxdXMsIDEwbXMgKHRoaW5raW5nIG9mIHRoZQpkaWZm ZXJlbnQgcGhhc2VzIGZvciBpOTE1X3JlcXVlc3Rfd2FpdCkuCgo+ICAgICAgICAgdHJpZ2dlcl9y ZXNldChmZCk7Cj4gKwo+ICsgICAgICAgLyogSEFDSyBmb3IgQ0kgKi8KPiArICAgICAgIGlndF9h c3NlcnQoaWd0X25zZWNfZWxhcHNlZCgmdHMpIDwgNWU5KTsKCmlndF9zZWNvbmRzX2VsYXBzZWQo KSB0aGUgYXBwcm94aW1hdGlvbiBpcyB3b3J0aCB0aGUgcmVhZGFiaWxpdHkuCgpJbiB0aGlzIGNh c2UgeW91IG1pZ2h0IGxpa2UgdG8gdHJ5IGlndF9zZXRfdGltZW91dCgpLCBhcyBJIHRoaW5rIGVh Y2gKc3VidGVzdCBhbmQgZXhpdGhhbmRsZXJzIGFyZSBpbiBwbGFjZSB0byBtYWtlIHRoZW0gcm9i dXN0IGFnYWluc3QKcHJlbWF0dXJlIGZhaWx1cmVzLgotQ2hyaXMKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: MIME-Version: 1.0 From: Chris Wilson In-Reply-To: <20180322111712.9056-2-tvrtko.ursulin@linux.intel.com> References: <20180322111712.9056-1-tvrtko.ursulin@linux.intel.com> <20180322111712.9056-2-tvrtko.ursulin@linux.intel.com> Message-ID: <152171875518.23562.12227602056261860847@mail.alporthouse.com> Date: Thu, 22 Mar 2018 11:39:15 +0000 Subject: Re: [igt-dev] [PATCH i-g-t 2/3] tests/gem_eio: Speed up test execution 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: Tvrtko Ursulin , igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-ID: UXVvdGluZyBUdnJ0a28gVXJzdWxpbiAoMjAxOC0wMy0yMiAxMToxNzoxMSkKPiBGcm9tOiBUdnJ0 a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+IAo+IElmIHdlIHN0b3AgcmVs eWluZyBvbiByZWd1bGFyIEdQVSBoYW5ncyB0byBiZSBkZXRlY3RlZCwgYnV0IHRyaWdnZXIgdGhl bQo+IG1hbnVhbGx5IGFzIHNvb24gYXMgd2Uga25vdyBvdXIgYmF0Y2ggb2YgaW50ZXJlc3QgaXMg YWN0dWFsbHkgZXhlY3V0aW5nCj4gb24gdGhlIEdQVSwgd2UgY2FuIGRyYW1hdGljYWxseSBzcGVl ZCB1cCB2YXJpb3VzIHN1YnRlc3RzLgo+IAo+IFRoaXMgaXMgZW5hYmxlZCBieSB0aGUgcG9sbGFi bGUgc3BpbiBiYXRjaCBhZGRlZCBpbiB0aGUgcHJldmlvdXMgcGF0Y2guCj4gCj4gU2lnbmVkLW9m Zi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPiBTdWdnZXN0 ZWQtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IENjOiBBbnRv bmlvIEFyZ2Vuemlhbm8gPGFudG9uaW8uYXJnZW56aWFub0BpbnRlbC5jb20+Cj4gLS0tCj4gTm90 ZSB0aGF0IHRoZSAnd2FpdCcgc3VidGVzdCBpcyBteXN0ZXJpb3VzbHkgaGFuZ2luZyBmb3IgbWUg aW4gdGhlIG5vLW9wCj4gYmF0Y2ggc2VuZCBieSBnZW1fdGVzdF9lbmdpbmVzLCBidXQgb25seSBv biBSQ1MgZW5naW5lLiBUQkQgd2hpbGUgSSBhbQo+IGdldHRpbmcgc29tZSBDSSByZXN1bHRzLgo+ IC0tLQo+ICBsaWIudGFyICAgICAgICAgfCBCaW4gMCAtPiAxMDI0MDAgYnl0ZXMKPiAgdGVzdHMv Z2VtX2Vpby5jIHwgIDk3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tCj4gIDIgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgMjcg ZGVsZXRpb25zKC0pCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIudGFyCj4gCj4gZGlmZiAtLWdp dCBhL2xpYi50YXIgYi9saWIudGFyCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lYTA0ZmFkMjE5YTg3ZjJlOTc1 ODUyOTg5NTI2ZjhkYTRjOWI3ZDZkCj4gR0lUIGJpbmFyeSBwYXRjaAo+IGxpdGVyYWwgMTAyNDAw Cj4gemNtZUh3PnZrSlFsQldNc1BmPSF7a3dKPWdVQWtNQUpjM0EyIWtQclFBU0FXTTw1TEYmM001 NyNmV30zWCtWO0g5CgpMb29rcyBjb3JyZWN0LgoKPiBkaWZmIC0tZ2l0IGEvdGVzdHMvZ2VtX2Vp by5jIGIvdGVzdHMvZ2VtX2Vpby5jCj4gaW5kZXggNGJjYzU5MzdkYjM5Li45MzQwMDA1NjEyNGIg MTAwNjQ0Cj4gLS0tIGEvdGVzdHMvZ2VtX2Vpby5jCj4gKysrIGIvdGVzdHMvZ2VtX2Vpby5jCj4g QEAgLTcxLDI2ICs3MSwyMyBAQCBzdGF0aWMgdm9pZCB0cmlnZ2VyX3Jlc2V0KGludCBmZCkKPiAg ICAgICAgIGdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKPiAgfQo+ICAKPiAtc3RhdGljIHZvaWQgd2Vk Z2VfZ3B1KGludCBmZCkKPiArc3RhdGljIHZvaWQgbWFudWFsX2hhbmcoaW50IGRybV9mZCkKPiAg ewo+IC0gICAgICAgLyogRmlyc3QgaWRsZSB0aGUgR1BVIHRoZW4gZGlzYWJsZSBHUFUgcmVzZXRz IGJlZm9yZSBpbmplY3RpbmcgYSBoYW5nICovCj4gLSAgICAgICBnZW1fcXVpZXNjZW50X2dwdShm ZCk7Cj4gLQo+IC0gICAgICAgaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7 Cj4gKyAgICAgICBpbnQgZGlyID0gaWd0X2RlYnVnZnNfZGlyKGRybV9mZCk7Cj4gIAo+IC0gICAg ICAgaWd0X2RlYnVnKCJXZWRnaW5nIEdQVSBieSBpbmplY3RpbmcgaGFuZ1xuIik7Cj4gLSAgICAg ICBpZ3RfcG9zdF9oYW5nX3JpbmcoZmQsIGlndF9oYW5nX3JpbmcoZmQsIEk5MTVfRVhFQ19ERUZB VUxUKSk7Cj4gKyAgICAgICBpZ3Rfc3lzZnNfc2V0KGRpciwgImk5MTVfd2VkZ2VkIiwgIi0xIik7 Cj4gIAo+IC0gICAgICAgaWd0X2Fzc2VydChpOTE1X3Jlc2V0X2NvbnRyb2wodHJ1ZSkpOwo+ICsg ICAgICAgY2xvc2UoZGlyKTsKPiAgfQoKT2suCgo+IC1zdGF0aWMgdm9pZCB3ZWRnZW1lKGludCBk cm1fZmQpCj4gK3N0YXRpYyB2b2lkIHdlZGdlX2dwdShpbnQgZmQpCj4gIHsKPiAtICAgICAgIGlu dCBkaXIgPSBpZ3RfZGVidWdmc19kaXIoZHJtX2ZkKTsKPiAtCj4gLSAgICAgICBpZ3Rfc3lzZnNf c2V0KGRpciwgImk5MTVfd2VkZ2VkIiwgIi0xIik7Cj4gKyAgICAgICAvKiBGaXJzdCBpZGxlIHRo ZSBHUFUgdGhlbiBkaXNhYmxlIEdQVSByZXNldHMgYmVmb3JlIGluamVjdGluZyBhIGhhbmcgKi8K PiArICAgICAgIGdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKPiAgCj4gLSAgICAgICBjbG9zZShkaXIp Owo+ICsgICAgICAgaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7Cj4gKyAg ICAgICBtYW51YWxfaGFuZyhmZCk7Cj4gKyAgICAgICBpZ3RfYXNzZXJ0KGk5MTVfcmVzZXRfY29u dHJvbCh0cnVlKSk7Cj4gIH0KCk9rLgoKPiAgCj4gIHN0YXRpYyBpbnQgX19nZW1fdGhyb3R0bGUo aW50IGZkKQo+IEBAIC0xNDksMjkgKzE0Niw2NiBAQCBzdGF0aWMgaW50IF9fZ2VtX3dhaXQoaW50 IGZkLCB1aW50MzJfdCBoYW5kbGUsIGludDY0X3QgdGltZW91dCkKPiAgICAgICAgIHJldHVybiBl cnI7Cj4gIH0KPiAgCj4gK3N0YXRpYyBpZ3Rfc3Bpbl90ICogX19zcGluX3BvbGwoaW50IGZkLCB1 aW50MzJfdCBjdHgsIHVuc2lnbmVkIGxvbmcgZmxhZ3MpCj4gK3sKPiArICAgICAgIGlmIChnZW1f Y2FuX3N0b3JlX2R3b3JkKGZkLCBmbGFncykpCj4gKyAgICAgICAgICAgICAgIHJldHVybiBfX2ln dF9zcGluX2JhdGNoX25ld19wb2xsKGZkLCBjdHgsIGZsYWdzKTsKPiArICAgICAgIGVsc2UKPiAr ICAgICAgICAgICAgICAgcmV0dXJuIF9faWd0X3NwaW5fYmF0Y2hfbmV3KGZkLCBjdHgsIGZsYWdz LCAwKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgX19zcGluX3dhaXQoaW50IGZkLCBpZ3Rfc3Bp bl90ICpzcGluKQo+ICt7Cj4gKyAgICAgICBpZiAoc3Bpbi0+cnVubmluZykgewo+ICsgICAgICAg ICAgICAgICB3aGlsZSAoISooKHZvbGF0aWxlIGJvb2wgKilzcGluLT5ydW5uaW5nKSkKPiArICAg ICAgICAgICAgICAgICAgICAgICA7Cj4gKyAgICAgICB9IGVsc2Ugewo+ICsgICAgICAgICAgICAg ICBpZ3RfZGVidWcoIl9fc3Bpbl93YWl0IC0gdXNsZWVwIG1vZGVcbiIpOwo+ICsgICAgICAgICAg ICAgICB1c2xlZXAoNTAwZTMpOyAvKiBCZXR0ZXIgdGhhbiBub3RoaW5nISAqLwo+ICsgICAgICAg fQo+ICt9Cj4gKwo+ICsvKgo+ICsgKiBXZWRnZSB0aGUgR1BVIHdoZW4gd2Uga25vdyBvdXIgYmF0 Y2ggaXMgcnVubmluZy4KPiArICovCj4gK3N0YXRpYyB2b2lkIHdlZGdlX2FmdGVyX3J1bm5pbmco aW50IGZkLCBpZ3Rfc3Bpbl90ICpzcGluKQo+ICt7Cj4gKyAgICAgICBfX3NwaW5fd2FpdChmZCwg c3Bpbik7Cj4gKyAgICAgICBtYW51YWxfaGFuZyhmZCk7Cj4gK30KPiArCj4gIHN0YXRpYyB2b2lk IHRlc3Rfd2FpdChpbnQgZmQpCj4gIHsKPiAtICAgICAgIGlndF9oYW5nX3QgaGFuZzsKPiArICAg ICAgIHN0cnVjdCB0aW1lc3BlYyB0cyA9IHsgfTsKPiArICAgICAgIGlndF9zcGluX3QgKmhhbmc7 Cj4gIAo+ICAgICAgICAgaWd0X3JlcXVpcmVfZ2VtKGZkKTsKPiAgCj4gKyAgICAgICBpZ3RfbnNl Y19lbGFwc2VkKCZ0cyk7Cj4gKwo+ICAgICAgICAgLyogSWYgdGhlIHJlcXVlc3Qgd2Ugd2FpdCBv biBjb21wbGV0ZXMgZHVlIHRvIGEgaGFuZyAoZXZlbiBmb3IKPiAgICAgICAgICAqIHRoYXQgcmVx dWVzdCksIHRoZSB1c2VyIGV4cGVjdHMgdGhlIHJldHVybiB2YWx1ZSB0byAwIChzdWNjZXNzKS4K PiAgICAgICAgICAqLwo+IC0gICAgICAgaGFuZyA9IGlndF9oYW5nX3JpbmcoZmQsIEk5MTVfRVhF Q19ERUZBVUxUKTsKPiAtICAgICAgIGlndF9hc3NlcnRfZXEoX19nZW1fd2FpdChmZCwgaGFuZy5o YW5kbGUsIC0xKSwgMCk7Cj4gLSAgICAgICBpZ3RfcG9zdF9oYW5nX3JpbmcoZmQsIGhhbmcpOwo+ ICsgICAgICAgaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKPiArICAgICAg IGhhbmcgPSBfX3NwaW5fcG9sbChmZCwgMCwgSTkxNV9FWEVDX0RFRkFVTFQpOwo+ICsgICAgICAg d2VkZ2VfYWZ0ZXJfcnVubmluZyhmZCwgaGFuZyk7Cj4gKyAgICAgICBpZ3RfYXNzZXJ0X2VxKF9f Z2VtX3dhaXQoZmQsIGhhbmctPmhhbmRsZSwgLTEpLCAwKTsKPiArICAgICAgIGlndF9zcGluX2Jh dGNoX2ZyZWUoZmQsIGhhbmcpOwoKPiAgCj4gICAgICAgICAvKiBJZiB0aGUgR1BVIGlzIHdlZGdl ZCBkdXJpbmcgdGhlIHdhaXQsIGFnYWluIHdlIGV4cGVjdCB0aGUgcmV0dXJuCj4gICAgICAgICAg KiB2YWx1ZSB0byBiZSAwIChzdWNjZXNzKS4KPiAgICAgICAgICAqLwo+ICAgICAgICAgaWd0X3Jl cXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7Cj4gLSAgICAgICBoYW5nID0gaWd0X2hh bmdfcmluZyhmZCwgSTkxNV9FWEVDX0RFRkFVTFQpOwo+IC0gICAgICAgaWd0X2Fzc2VydF9lcShf X2dlbV93YWl0KGZkLCBoYW5nLmhhbmRsZSwgLTEpLCAwKTsKPiAtICAgICAgIGlndF9wb3N0X2hh bmdfcmluZyhmZCwgaGFuZyk7Cj4gKyAgICAgICBoYW5nID0gX19zcGluX3BvbGwoZmQsIDAsIEk5 MTVfRVhFQ19ERUZBVUxUKTsKPiArICAgICAgIHdlZGdlX2FmdGVyX3J1bm5pbmcoZmQsIGhhbmcp Owo+ICsgICAgICAgaWd0X2Fzc2VydF9lcShfX2dlbV93YWl0KGZkLCBoYW5nLT5oYW5kbGUsIC0x KSwgMCk7Cj4gKyAgICAgICBpZ3Rfc3Bpbl9iYXRjaF9mcmVlKGZkLCBoYW5nKTsKPiAgICAgICAg IGlndF9yZXF1aXJlKGk5MTVfcmVzZXRfY29udHJvbCh0cnVlKSk7CgpIbW0uIFRoZXNlIGFyZSBu b3QgZXF1aXZhbGVudCB0byB0aGUgb3JpZ2luYWwgdGVzdC4gVGhlIHRlc3RzCnJlcXVpcmVzIGhh bmdjaGVjayB0byBraWNrIGluIHdoaWxlIHRoZSB0ZXN0IGlzIGJsb2NrZWQgb24gaWd0X3dhaXQu ClRvIGRvIGEgZmFzdCBlcXVpdmFsZW50LCB3ZSBuZWVkIHRvIGtpY2sgb2ZmIGEgdGltZXIuIChI ZXJlIHdlIGFyZSBqdXN0CmFza2luZyBpZiBhIHdhaXQgb24gYW4gYWxyZWFkeSBjb21wbGV0ZWQg cmVxdWVzdCBkb2Vzbid0IGJsb2NrLCBub3QgaG93CndlIGhhbmRsZSB0aGUgcmVzZXQgaW4gdGhl IG1pZGRsZSBvZiBhIHdhaXQuIFNlZW1zIGEgcmVhc29uYWJsZSBhZGRpdGlvbgp0aG91Z2guKQoK SSB0aGluayB0aGF0J3MgYSBnZW5lcmFsIHBhdHRlcm4gd29ydGggcmVwZWF0aW5nIGZvciB0aGUg cmVzdCBvZiB0ZXN0czoKZG9uJ3QgaW1tZWRpYXRlbHkgaW5qZWN0IHRoZSBoYW5nLCBidXQgbGVh dmUgaXQgYSBmZXcgbWlsbGlzZWNvbmRzIHRvCmFsbG93IHVzIHRvIGJsb2NrIG9uIHRoZSBzdWJz ZXF1ZW50IHdhaXQuIEkgd291bGQgZXZlbiByZXBlYXQgdGhlIHRlc3RzCmEgZmV3IHRpbWVzIHdp dGggZGlmZmVyZW50IHRpbWVvdXRzOyAwLCAxdXMsIDEwbXMgKHRoaW5raW5nIG9mIHRoZQpkaWZm ZXJlbnQgcGhhc2VzIGZvciBpOTE1X3JlcXVlc3Rfd2FpdCkuCgo+ICAgICAgICAgdHJpZ2dlcl9y ZXNldChmZCk7Cj4gKwo+ICsgICAgICAgLyogSEFDSyBmb3IgQ0kgKi8KPiArICAgICAgIGlndF9h c3NlcnQoaWd0X25zZWNfZWxhcHNlZCgmdHMpIDwgNWU5KTsKCmlndF9zZWNvbmRzX2VsYXBzZWQo KSB0aGUgYXBwcm94aW1hdGlvbiBpcyB3b3J0aCB0aGUgcmVhZGFiaWxpdHkuCgpJbiB0aGlzIGNh c2UgeW91IG1pZ2h0IGxpa2UgdG8gdHJ5IGlndF9zZXRfdGltZW91dCgpLCBhcyBJIHRoaW5rIGVh Y2gKc3VidGVzdCBhbmQgZXhpdGhhbmRsZXJzIGFyZSBpbiBwbGFjZSB0byBtYWtlIHRoZW0gcm9i dXN0IGFnYWluc3QKcHJlbWF0dXJlIGZhaWx1cmVzLgotQ2hyaXMKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRl dkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==