From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH v2 4/7] lib/hexdump.c: Replace ascii bool in hex_dump_to_buffer with flags Date: Wed, 08 May 2019 11:58:34 +0300 Message-ID: <87v9yll3ut.fsf@intel.com> References: <20190508070148.23130-1-alastair@au1.ibm.com> <20190508070148.23130-5-alastair@au1.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190508070148.23130-5-alastair@au1.ibm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Alastair D'Silva , alastair@d-silva.org Cc: linux-fbdev@vger.kernel.org, Stanislaw Gruszka , Petr Mladek , David Airlie , dri-devel@lists.freedesktop.org, devel@driverdev.osuosl.org, linux-scsi@vger.kernel.org, Jassi Brar , ath10k@lists.infradead.org, intel-gfx@lists.freedesktop.org, Dan Carpenter , Jose Abreu , Tom Lendacky , "James E.J. Bottomley" , Steven Rostedt , linux-fsdevel@vger.kernel.org, Alexander Viro , Kalle Valo , Karsten Keil , "Martin K. Petersen" , Greg Kroah-Hartman , linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Sergey Senozhatsky List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAwOCBNYXkgMjAxOSwgQWxhc3RhaXIgRCdTaWx2YSA8YWxhc3RhaXJAYXUxLmlibS5j b20+IHdyb3RlOgo+IEZyb206IEFsYXN0YWlyIEQnU2lsdmEgPGFsYXN0YWlyQGQtc2lsdmEub3Jn Pgo+Cj4gSW4gb3JkZXIgdG8gc3VwcG9ydCBhZGRpdGlvbmFsIGZlYXR1cmVzIGluIGhleF9kdW1w X3RvX2J1ZmZlciwgcmVwbGFjZQo+IHRoZSBhc2NpaSBib29sIHBhcmFtZXRlciB3aXRoIGZsYWdz Lgo+Cj4gU2lnbmVkLW9mZi1ieTogQWxhc3RhaXIgRCdTaWx2YSA8YWxhc3RhaXJAZC1zaWx2YS5v cmc+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jICAgICAg ICAgICAgfCAgMiArLQoKRm9yIGk5MTUsCgpBY2tlZC1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlr dWxhQGludGVsLmNvbT4KCj4gIGRyaXZlcnMvaXNkbi9oYXJkd2FyZS9tSVNETi9tSVNETmlzYXIu YyAgICAgICAgICAgfCAgNiArKysrLS0KPiAgZHJpdmVycy9tYWlsYm94L21haWxib3gtdGVzdC5j ICAgICAgICAgICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvbmV0L2V0aGVybmV0L2FtZC94 Z2JlL3hnYmUtZHJ2LmMgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL25ldC9ldGhlcm5ldC9z eW5vcHN5cy9kd2MteGxnbWFjLWNvbW1vbi5jIHwgIDIgKy0KPiAgZHJpdmVycy9uZXQvd2lyZWxl c3MvYXRoL2F0aDEway9kZWJ1Zy5jICAgICAgICAgICB8ICAzICsrLQo+ICBkcml2ZXJzL25ldC93 aXJlbGVzcy9pbnRlbC9pd2xlZ2FjeS8zOTQ1LW1hYy5jICAgIHwgIDIgKy0KPiAgZHJpdmVycy9w bGF0Zm9ybS9jaHJvbWUvd2lsY29fZWMvZGVidWdmcy5jICAgICAgICB8ICAyICstCj4gIGRyaXZl cnMvc2NzaS9zY3NpX2xvZ2dpbmcuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgOCArKystLS0t LQo+ICBkcml2ZXJzL3N0YWdpbmcvZmJ0ZnQvZmJ0ZnQtY29yZS5jICAgICAgICAgICAgICAgIHwg IDIgKy0KPiAgZnMvc2VxX2ZpbGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAzICsrLQo+ICBpbmNsdWRlL2xpbnV4L3ByaW50ay5oICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgIDggKysrKy0tLS0KPiAgbGliL2hleGR1bXAuYyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8IDE1ICsrKysrKysrLS0tLS0tLQo+ICBsaWIvdGVzdF9oZXhkdW1w LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKysrLS0KPiAgMTQgZmlsZXMg Y2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZW5naW5lX2NzLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYwo+IGluZGV4IDQ5ZmE0M2ZmMDJiYS4uZmIxMzNlNzI5 ZjlhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZW5naW5lX2NzLmMKPiBAQCAtMTMx OCw3ICsxMzE4LDcgQEAgc3RhdGljIHZvaWQgaGV4ZHVtcChzdHJ1Y3QgZHJtX3ByaW50ZXIgKm0s IGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbikKPiAgCQlXQVJOX09OX09OQ0UoaGV4X2R1bXBf dG9fYnVmZmVyKGJ1ZiArIHBvcywgbGVuIC0gcG9zLAo+ICAJCQkJCQlyb3dzaXplLCBzaXplb2Yo dTMyKSwKPiAgCQkJCQkJbGluZSwgc2l6ZW9mKGxpbmUpLAo+IC0JCQkJCQlmYWxzZSkgPj0gc2l6 ZW9mKGxpbmUpKTsKPiArCQkJCQkJMCkgPj0gc2l6ZW9mKGxpbmUpKTsKPiAgCQlkcm1fcHJpbnRm KG0sICJbJTA0enhdICVzXG4iLCBwb3MsIGxpbmUpOwo+ICAKPiAgCQlwcmV2ID0gYnVmICsgcG9z Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2lzZG4vaGFyZHdhcmUvbUlTRE4vbUlTRE5pc2FyLmMg Yi9kcml2ZXJzL2lzZG4vaGFyZHdhcmUvbUlTRE4vbUlTRE5pc2FyLmMKPiBpbmRleCAzODY3MzFl YzI0ODkuLmYxM2YzNGRiNmMxNyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2lzZG4vaGFyZHdhcmUv bUlTRE4vbUlTRE5pc2FyLmMKPiArKysgYi9kcml2ZXJzL2lzZG4vaGFyZHdhcmUvbUlTRE4vbUlT RE5pc2FyLmMKPiBAQCAtODQsNyArODQsOCBAQCBzZW5kX21ib3goc3RydWN0IGlzYXJfaHcgKmlz YXIsIHU4IGhpcywgdTggY3JlZywgdTggbGVuLCB1OCAqbXNnKQo+ICAKPiAgCQkJd2hpbGUgKGwg PCAoaW50KWxlbikgewo+ICAJCQkJaGV4X2R1bXBfdG9fYnVmZmVyKG1zZyArIGwsIGxlbiAtIGws IDMyLCAxLAo+IC0JCQkJCQkgICBpc2FyLT5sb2csIDI1NiwgMSk7Cj4gKwkJCQkJCSAgIGlzYXIt PmxvZywgMjU2LAo+ICsJCQkJCQkgICBIRVhEVU1QX0FTQ0lJKTsKPiAgCQkJCXByX2RlYnVnKCIl czogJXMgJTAyeDogJXNcbiIsIGlzYXItPm5hbWUsCj4gIAkJCQkJIF9fZnVuY19fLCBsLCBpc2Fy LT5sb2cpOwo+ICAJCQkJbCArPSAzMjsKPiBAQCAtMTEzLDcgKzExNCw4IEBAIHJjdl9tYm94KHN0 cnVjdCBpc2FyX2h3ICppc2FyLCB1OCAqbXNnKQo+ICAKPiAgCQkJd2hpbGUgKGwgPCAoaW50KWlz YXItPmNsc2IpIHsKPiAgCQkJCWhleF9kdW1wX3RvX2J1ZmZlcihtc2cgKyBsLCBpc2FyLT5jbHNi IC0gbCwgMzIsCj4gLQkJCQkJCSAgIDEsIGlzYXItPmxvZywgMjU2LCAxKTsKPiArCQkJCQkJICAg MSwgaXNhci0+bG9nLCAyNTYsCj4gKwkJCQkJCSAgIEhFWERVTVBfQVNDSUkpOwo+ICAJCQkJcHJf ZGVidWcoIiVzOiAlcyAlMDJ4OiAlc1xuIiwgaXNhci0+bmFtZSwKPiAgCQkJCQkgX19mdW5jX18s IGwsIGlzYXItPmxvZyk7Cj4gIAkJCQlsICs9IDMyOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21h aWxib3gvbWFpbGJveC10ZXN0LmMgYi9kcml2ZXJzL21haWxib3gvbWFpbGJveC10ZXN0LmMKPiBp bmRleCA0ZTRhYzRiZTY0MjMuLjJmOWEwOTRkMDI1OSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21h aWxib3gvbWFpbGJveC10ZXN0LmMKPiArKysgYi9kcml2ZXJzL21haWxib3gvbWFpbGJveC10ZXN0 LmMKPiBAQCAtMjEzLDcgKzIxMyw3IEBAIHN0YXRpYyBzc2l6ZV90IG1ib3hfdGVzdF9tZXNzYWdl X3JlYWQoc3RydWN0IGZpbGUgKmZpbHAsIGNoYXIgX191c2VyICp1c2VyYnVmLAo+ICAJCWhleF9k dW1wX3RvX2J1ZmZlcihwdHIsCj4gIAkJCQkgICBNQk9YX0JZVEVTX1BFUl9MSU5FLAo+ICAJCQkJ ICAgTUJPWF9CWVRFU19QRVJfTElORSwgMSwgdG91c2VyICsgbCwKPiAtCQkJCSAgIE1CT1hfSEVY RFVNUF9MSU5FX0xFTiwgdHJ1ZSk7Cj4gKwkJCQkgICBNQk9YX0hFWERVTVBfTElORV9MRU4sIEhF WERVTVBfQVNDSUkpOwo+ICAKPiAgCQlwdHIgKz0gTUJPWF9CWVRFU19QRVJfTElORTsKPiAgCQls ICs9IE1CT1hfSEVYRFVNUF9MSU5FX0xFTjsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvYW1kL3hnYmUveGdiZS1kcnYuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2FtZC94Z2Jl L3hnYmUtZHJ2LmMKPiBpbmRleCAwY2M5MTFmOTI4YjEuLmU5NTRhMzFjZWUwYyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9hbWQveGdiZS94Z2JlLWRydi5jCj4gKysrIGIvZHJp dmVycy9uZXQvZXRoZXJuZXQvYW1kL3hnYmUveGdiZS1kcnYuYwo+IEBAIC0yOTkyLDcgKzI5OTIs NyBAQCB2b2lkIHhnYmVfcHJpbnRfcGt0KHN0cnVjdCBuZXRfZGV2aWNlICpuZXRkZXYsIHN0cnVj dCBza19idWZmICpza2IsIGJvb2wgdHhfcngpCj4gIAkJdW5zaWduZWQgaW50IGxlbiA9IG1pbihz a2ItPmxlbiAtIGksIDMyVSk7Cj4gIAo+ICAJCWhleF9kdW1wX3RvX2J1ZmZlcigmc2tiLT5kYXRh W2ldLCBsZW4sIDMyLCAxLAo+IC0JCQkJICAgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwgZmFsc2Up Owo+ICsJCQkJICAgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwgMCk7Cj4gIAkJbmV0ZGV2X2RiZyhu ZXRkZXYsICIgICUjMDZ4OiAlc1xuIiwgaSwgYnVmZmVyKTsKPiAgCX0KPiAgCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3N5bm9wc3lzL2R3Yy14bGdtYWMtY29tbW9uLmMgYi9k cml2ZXJzL25ldC9ldGhlcm5ldC9zeW5vcHN5cy9kd2MteGxnbWFjLWNvbW1vbi5jCj4gaW5kZXgg ZWIxYzZiMDNjMzI5Li5iODBhZGZhMWY4OTAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvc3lub3BzeXMvZHdjLXhsZ21hYy1jb21tb24uYwo+ICsrKyBiL2RyaXZlcnMvbmV0L2V0 aGVybmV0L3N5bm9wc3lzL2R3Yy14bGdtYWMtY29tbW9uLmMKPiBAQCAtMzQ5LDcgKzM0OSw3IEBA IHZvaWQgeGxnbWFjX3ByaW50X3BrdChzdHJ1Y3QgbmV0X2RldmljZSAqbmV0ZGV2LAo+ICAJCXVu c2lnbmVkIGludCBsZW4gPSBtaW4oc2tiLT5sZW4gLSBpLCAzMlUpOwo+ICAKPiAgCQloZXhfZHVt cF90b19idWZmZXIoJnNrYi0+ZGF0YVtpXSwgbGVuLCAzMiwgMSwKPiAtCQkJCSAgIGJ1ZmZlciwg c2l6ZW9mKGJ1ZmZlciksIGZhbHNlKTsKPiArCQkJCSAgIGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciks IDApOwo+ICAJCW5ldGRldl9kYmcobmV0ZGV2LCAiICAlIzA2eDogJXNcbiIsIGksIGJ1ZmZlcik7 Cj4gIAl9Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoMTBr L2RlYnVnLmMgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9hdGgvYXRoMTBrL2RlYnVnLmMKPiBpbmRl eCAzMmQ5NjdhMzFjNjUuLjRjOTllYTAzMjI2ZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC93 aXJlbGVzcy9hdGgvYXRoMTBrL2RlYnVnLmMKPiArKysgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9h dGgvYXRoMTBrL2RlYnVnLmMKPiBAQCAtMjY2Miw3ICsyNjYyLDggQEAgdm9pZCBhdGgxMGtfZGJn X2R1bXAoc3RydWN0IGF0aDEwayAqYXIsCj4gIAkJCQkJCSh1bnNpZ25lZCBpbnQpKHB0ciAtIGJ1 ZikpOwo+ICAJCQloZXhfZHVtcF90b19idWZmZXIocHRyLCBsZW4gLSAocHRyIC0gYnVmKSwgMTYs IDEsCj4gIAkJCQkJICAgbGluZWJ1ZiArIGxpbmVidWZsZW4sCj4gLQkJCQkJICAgc2l6ZW9mKGxp bmVidWYpIC0gbGluZWJ1ZmxlbiwgdHJ1ZSk7Cj4gKwkJCQkJICAgc2l6ZW9mKGxpbmVidWYpIC0g bGluZWJ1ZmxlbiwKPiArCQkJCQkgICBIRVhEVU1QX0FTQ0lJKTsKPiAgCQkJZGV2X3ByaW50ayhL RVJOX0RFQlVHLCBhci0+ZGV2LCAiJXNcbiIsIGxpbmVidWYpOwo+ICAJCX0KPiAgCX0KPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsZWdhY3kvMzk0NS1tYWMuYyBi L2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bGVnYWN5LzM5NDUtbWFjLmMKPiBpbmRleCAy NzE5NzdmN2ZiYjAuLmFjYmUyNmQyMmMzNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL25ldC93aXJl bGVzcy9pbnRlbC9pd2xlZ2FjeS8zOTQ1LW1hYy5jCj4gKysrIGIvZHJpdmVycy9uZXQvd2lyZWxl c3MvaW50ZWwvaXdsZWdhY3kvMzk0NS1tYWMuYwo+IEBAIC0zMjQ3LDcgKzMyNDcsNyBAQCBpbDM5 NDVfc2hvd19tZWFzdXJlbWVudChzdHJ1Y3QgZGV2aWNlICpkLCBzdHJ1Y3QgZGV2aWNlX2F0dHJp YnV0ZSAqYXR0ciwKPiAgCj4gIAl3aGlsZSAoc2l6ZSAmJiBQQUdFX1NJWkUgLSBsZW4pIHsKPiAg CQloZXhfZHVtcF90b19idWZmZXIoZGF0YSArIG9mcywgc2l6ZSwgMTYsIDEsIGJ1ZiArIGxlbiwK PiAtCQkJCSAgIFBBR0VfU0laRSAtIGxlbiwgdHJ1ZSk7Cj4gKwkJCQkgICBQQUdFX1NJWkUgLSBs ZW4sIEhFWERVTVBfQVNDSUkpOwo+ICAJCWxlbiA9IHN0cmxlbihidWYpOwo+ICAJCWlmIChQQUdF X1NJWkUgLSBsZW4pCj4gIAkJCWJ1ZltsZW4rK10gPSAnXG4nOwo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL3BsYXRmb3JtL2Nocm9tZS93aWxjb19lYy9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL3BsYXRmb3Jt L2Nocm9tZS93aWxjb19lYy9kZWJ1Z2ZzLmMKPiBpbmRleCBjMDkwZGIyY2Q1YmUuLjI2ZDlhZTVj MmRjMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL3BsYXRmb3JtL2Nocm9tZS93aWxjb19lYy9kZWJ1 Z2ZzLmMKPiArKysgYi9kcml2ZXJzL3BsYXRmb3JtL2Nocm9tZS93aWxjb19lYy9kZWJ1Z2ZzLmMK PiBAQCAtMTc0LDcgKzE3NCw3IEBAIHN0YXRpYyBzc2l6ZV90IHJhd19yZWFkKHN0cnVjdCBmaWxl ICpmaWxlLCBjaGFyIF9fdXNlciAqdXNlcl9idWYsIHNpemVfdCBjb3VudCwKPiAgCQlmbXRfbGVu ID0gaGV4X2R1bXBfdG9fYnVmZmVyKGRlYnVnX2luZm8tPnJhd19kYXRhLAo+ICAJCQkJCSAgICAg ZGVidWdfaW5mby0+cmVzcG9uc2Vfc2l6ZSwKPiAgCQkJCQkgICAgIDE2LCAxLCBkZWJ1Z19pbmZv LT5mb3JtYXR0ZWRfZGF0YSwKPiAtCQkJCQkgICAgIEZPUk1BVFRFRF9CVUZGRVJfU0laRSwgdHJ1 ZSk7Cj4gKwkJCQkJICAgICBGT1JNQVRURURfQlVGRkVSX1NJWkUsIEhFWERVTVBfQVNDSUkpOwo+ ICAJCS8qIE9ubHkgcmV0dXJuIHJlc3BvbnNlIHRoZSBmaXJzdCB0aW1lIGl0IGlzIHJlYWQgKi8K PiAgCQlkZWJ1Z19pbmZvLT5yZXNwb25zZV9zaXplID0gMDsKPiAgCX0KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9zY3NpL3Njc2lfbG9nZ2luZy5jIGIvZHJpdmVycy9zY3NpL3Njc2lfbG9nZ2luZy5j Cj4gaW5kZXggYmQ3MDMzOWMxMjQyLi5mY2U1NDJiYjQwZTYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9zY3NpL3Njc2lfbG9nZ2luZy5jCj4gKysrIGIvZHJpdmVycy9zY3NpL3Njc2lfbG9nZ2luZy5j Cj4gQEAgLTI2Myw3ICsyNjMsNyBAQCB2b2lkIHNjc2lfcHJpbnRfY29tbWFuZChzdHJ1Y3Qgc2Nz aV9jbW5kICpjbWQpCj4gIAkJCQkJCSAiQ0RCWyUwMnhdOiAiLCBrKTsKPiAgCQkJCWhleF9kdW1w X3RvX2J1ZmZlcigmY21kLT5jbW5kW2tdLCBsaW5lbGVuLAo+ICAJCQkJCQkgICAxNiwgMSwgbG9n YnVmICsgb2ZmLAo+IC0JCQkJCQkgICBsb2didWZfbGVuIC0gb2ZmLCBmYWxzZSk7Cj4gKwkJCQkJ CSAgIGxvZ2J1Zl9sZW4gLSBvZmYsIDApOwo+ICAJCQl9Cj4gIAkJCWRldl9wcmludGsoS0VSTl9J TkZPLCAmY21kLT5kZXZpY2UtPnNkZXZfZ2VuZGV2LCAiJXMiLAo+ICAJCQkJICAgbG9nYnVmKTsK PiBAQCAtMjc0LDggKzI3NCw3IEBAIHZvaWQgc2NzaV9wcmludF9jb21tYW5kKHN0cnVjdCBzY3Np X2NtbmQgKmNtZCkKPiAgCWlmICghV0FSTl9PTihvZmYgPiBsb2didWZfbGVuIC0gNDkpKSB7Cj4g IAkJb2ZmICs9IHNjbnByaW50Zihsb2didWYgKyBvZmYsIGxvZ2J1Zl9sZW4gLSBvZmYsICIgIik7 Cj4gIAkJaGV4X2R1bXBfdG9fYnVmZmVyKGNtZC0+Y21uZCwgY21kLT5jbWRfbGVuLCAxNiwgMSwK PiAtCQkJCSAgIGxvZ2J1ZiArIG9mZiwgbG9nYnVmX2xlbiAtIG9mZiwKPiAtCQkJCSAgIGZhbHNl KTsKPiArCQkJCSAgIGxvZ2J1ZiArIG9mZiwgbG9nYnVmX2xlbiAtIG9mZiwgMCk7Cj4gIAl9Cj4g IG91dF9wcmludGs6Cj4gIAlkZXZfcHJpbnRrKEtFUk5fSU5GTywgJmNtZC0+ZGV2aWNlLT5zZGV2 X2dlbmRldiwgIiVzIiwgbG9nYnVmKTsKPiBAQCAtMzU0LDggKzM1Myw3IEBAIHNjc2lfbG9nX2R1 bXBfc2Vuc2UoY29uc3Qgc3RydWN0IHNjc2lfZGV2aWNlICpzZGV2LCBjb25zdCBjaGFyICpuYW1l LCBpbnQgdGFnLAo+ICAJCW9mZiA9IHNkZXZfZm9ybWF0X2hlYWRlcihsb2didWYsIGxvZ2J1Zl9s ZW4sCj4gIAkJCQkJIG5hbWUsIHRhZyk7Cj4gIAkJaGV4X2R1bXBfdG9fYnVmZmVyKCZzZW5zZV9i dWZmZXJbaV0sIGxlbiwgMTYsIDEsCj4gLQkJCQkgICBsb2didWYgKyBvZmYsIGxvZ2J1Zl9sZW4g LSBvZmYsCj4gLQkJCQkgICBmYWxzZSk7Cj4gKwkJCQkgICBsb2didWYgKyBvZmYsIGxvZ2J1Zl9s ZW4gLSBvZmYsIDApOwo+ICAJCWRldl9wcmludGsoS0VSTl9JTkZPLCAmc2Rldi0+c2Rldl9nZW5k ZXYsICIlcyIsIGxvZ2J1Zik7Cj4gIAl9Cj4gIAlzY3NpX2xvZ19yZWxlYXNlX2J1ZmZlcihsb2di dWYpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvZmJ0ZnQvZmJ0ZnQtY29yZS5jIGIv ZHJpdmVycy9zdGFnaW5nL2ZidGZ0L2ZidGZ0LWNvcmUuYwo+IGluZGV4IDliMDdiYWRmNGM2Yy4u MmU1ZGY1Y2M5ZDYxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvc3RhZ2luZy9mYnRmdC9mYnRmdC1j b3JlLmMKPiArKysgYi9kcml2ZXJzL3N0YWdpbmcvZmJ0ZnQvZmJ0ZnQtY29yZS5jCj4gQEAgLTYx LDcgKzYxLDcgQEAgdm9pZCBmYnRmdF9kYmdfaGV4KGNvbnN0IHN0cnVjdCBkZXZpY2UgKmRldiwg aW50IGdyb3Vwc2l6ZSwKPiAgCXZhX2VuZChhcmdzKTsKPiAgCj4gIAloZXhfZHVtcF90b19idWZm ZXIoYnVmLCBsZW4sIDMyLCBncm91cHNpemUsIHRleHQgKyB0ZXh0X2xlbiwKPiAtCQkJICAgNTEy IC0gdGV4dF9sZW4sIGZhbHNlKTsKPiArCQkJICAgNTEyIC0gdGV4dF9sZW4sIDApOwo+ICAKPiAg CWlmIChsZW4gPiAzMikKPiAgCQlkZXZfaW5mbyhkZXYsICIlcyAuLi5cbiIsIHRleHQpOwo+IGRp ZmYgLS1naXQgYS9mcy9zZXFfZmlsZS5jIGIvZnMvc2VxX2ZpbGUuYwo+IGluZGV4IDFkZWE3YThh NTI1NS4uYTAyMTM2MzdhZjNlIDEwMDY0NAo+IC0tLSBhL2ZzL3NlcV9maWxlLmMKPiArKysgYi9m cy9zZXFfZmlsZS5jCj4gQEAgLTg3Myw3ICs4NzMsOCBAQCB2b2lkIHNlcV9oZXhfZHVtcChzdHJ1 Y3Qgc2VxX2ZpbGUgKm0sIGNvbnN0IGNoYXIgKnByZWZpeF9zdHIsIGludCBwcmVmaXhfdHlwZSwK PiAgCj4gIAkJc2l6ZSA9IHNlcV9nZXRfYnVmKG0sICZidWZmZXIpOwo+ICAJCXJldCA9IGhleF9k dW1wX3RvX2J1ZmZlcihwdHIgKyBpLCBsaW5lbGVuLCByb3dzaXplLCBncm91cHNpemUsCj4gLQkJ CQkJIGJ1ZmZlciwgc2l6ZSwgYXNjaWkpOwo+ICsJCQkJCSBidWZmZXIsIHNpemUsCj4gKwkJCQkJ IGFzY2lpID8gSEVYRFVNUF9BU0NJSSA6IDApOwo+ICAJCXNlcV9jb21taXQobSwgcmV0IDwgc2l6 ZSA/IHJldCA6IC0xKTsKPiAgCj4gIAkJc2VxX3B1dGMobSwgJ1xuJyk7Cj4gZGlmZiAtLWdpdCBh L2luY2x1ZGUvbGludXgvcHJpbnRrLmggYi9pbmNsdWRlL2xpbnV4L3ByaW50ay5oCj4gaW5kZXgg OTM4YTY3NTgwZDc4Li4wMGE4MmU0Njg2NDMgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9saW51eC9w cmludGsuaAo+ICsrKyBiL2luY2x1ZGUvbGludXgvcHJpbnRrLmgKPiBAQCAtNDgwLDEzICs0ODAs MTMgQEAgZW51bSB7Cj4gIAlEVU1QX1BSRUZJWF9PRkZTRVQKPiAgfTsKPiAgCj4gLWV4dGVybiBp bnQgaGV4X2R1bXBfdG9fYnVmZmVyKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbiwgaW50IHJv d3NpemUsCj4gLQkJCSAgICAgIGludCBncm91cHNpemUsIGNoYXIgKmxpbmVidWYsIHNpemVfdCBs aW5lYnVmbGVuLAo+IC0JCQkgICAgICBib29sIGFzY2lpKTsKPiAtCj4gICNkZWZpbmUgSEVYRFVN UF9BU0NJSQkJCSgxIDw8IDApCj4gICNkZWZpbmUgSEVYRFVNUF9TVVBQUkVTU19SRVBFQVRFRAko MSA8PCAxKQo+ICAKPiArZXh0ZXJuIGludCBoZXhfZHVtcF90b19idWZmZXIoY29uc3Qgdm9pZCAq YnVmLCBzaXplX3QgbGVuLCBpbnQgcm93c2l6ZSwKPiArCQkJICAgICAgaW50IGdyb3Vwc2l6ZSwg Y2hhciAqbGluZWJ1Ziwgc2l6ZV90IGxpbmVidWZsZW4sCj4gKwkJCSAgICAgIHU2NCBmbGFncyk7 Cj4gKwo+ICAjaWZkZWYgQ09ORklHX1BSSU5USwo+ICBleHRlcm4gdm9pZCBwcmludF9oZXhfZHVt cF9leHQoY29uc3QgY2hhciAqbGV2ZWwsIGNvbnN0IGNoYXIgKnByZWZpeF9zdHIsCj4gIAkJCSAg IGludCBwcmVmaXhfdHlwZSwgaW50IHJvd3NpemUsIGludCBncm91cHNpemUsCj4gZGlmZiAtLWdp dCBhL2xpYi9oZXhkdW1wLmMgYi9saWIvaGV4ZHVtcC5jCj4gaW5kZXggZDYxYTFlNGYxOWZhLi5k ZGQxNjk3ZTVmOWIgMTAwNjQ0Cj4gLS0tIGEvbGliL2hleGR1bXAuYwo+ICsrKyBiL2xpYi9oZXhk dW1wLmMKPiBAQCAtODUsNyArODUsOCBAQCBFWFBPUlRfU1lNQk9MKGJpbjJoZXgpOwo+ICAgKiBA Z3JvdXBzaXplOiBudW1iZXIgb2YgYnl0ZXMgdG8gcHJpbnQgYXQgYSB0aW1lICgxLCAyLCA0LCA4 OyBkZWZhdWx0ID0gMSkKPiAgICogQGxpbmVidWY6IHdoZXJlIHRvIHB1dCB0aGUgY29udmVydGVk IGRhdGEKPiAgICogQGxpbmVidWZsZW46IHRvdGFsIHNpemUgb2YgQGxpbmVidWYsIGluY2x1ZGlu ZyBzcGFjZSBmb3IgdGVybWluYXRpbmcgTlVMCj4gLSAqIEBhc2NpaTogaW5jbHVkZSBBU0NJSSBh ZnRlciB0aGUgaGV4IG91dHB1dAo+ICsgKiBAZmxhZ3M6IEEgYml0d2lzZSBPUiBvZiB0aGUgZm9s bG93aW5nIGZsYWdzOgo+ICsgKglIRVhEVU1QX0FTQ0lJOgkJCWluY2x1ZGUgQVNDSUkgYWZ0ZXIg dGhlIGhleCBvdXRwdXQKPiAgICoKPiAgICogaGV4X2R1bXBfdG9fYnVmZmVyKCkgd29ya3Mgb24g b25lICJsaW5lIiBvZiBvdXRwdXQgYXQgYSB0aW1lLCBjb252ZXJ0aW5nCj4gICAqIDxncm91cHNp emU+IGJ5dGVzIG9mIGlucHV0IHRvIGhleGFkZWNpbWFsIChhbmQgb3B0aW9uYWxseSBwcmludGFi bGUgQVNDSUkpCj4gQEAgLTk3LDcgKzk4LDcgQEAgRVhQT1JUX1NZTUJPTChiaW4yaGV4KTsKPiAg ICoKPiAgICogRS5nLjoKPiAgICogICBoZXhfZHVtcF90b19idWZmZXIoZnJhbWUtPmRhdGEsIGZy YW1lLT5sZW4sIDE2LCAxLAo+IC0gKgkJCWxpbmVidWYsIHNpemVvZihsaW5lYnVmKSwgdHJ1ZSk7 Cj4gKyAqCQkJbGluZWJ1Ziwgc2l6ZW9mKGxpbmVidWYpLCBIRVhEVU1QX0FTQ0lJKTsKPiAgICoK PiAgICogZXhhbXBsZSBvdXRwdXQgYnVmZmVyOgo+ICAgKiA0MCA0MSA0MiA0MyA0NCA0NSA0NiA0 NyA0OCA0OSA0YSA0YiA0YyA0ZCA0ZSA0ZiAgQEFCQ0RFRkdISUpLTE1OTwo+IEBAIC0xMDksNyAr MTEwLDcgQEAgRVhQT1JUX1NZTUJPTChiaW4yaGV4KTsKPiAgICogc3RyaW5nIGlmIGVub3VnaCBz cGFjZSBoYWQgYmVlbiBhdmFpbGFibGUuCj4gICAqLwo+ICBpbnQgaGV4X2R1bXBfdG9fYnVmZmVy KGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbiwgaW50IHJvd3NpemUsIGludCBncm91cHNpemUs Cj4gLQkJICAgICAgIGNoYXIgKmxpbmVidWYsIHNpemVfdCBsaW5lYnVmbGVuLCBib29sIGFzY2lp KQo+ICsJCSAgICAgICBjaGFyICpsaW5lYnVmLCBzaXplX3QgbGluZWJ1ZmxlbiwgdTY0IGZsYWdz KQo+ICB7Cj4gIAljb25zdCB1OCAqcHRyID0gYnVmOwo+ICAJaW50IG5ncm91cHM7Cj4gQEAgLTE4 Nyw3ICsxODgsNyBAQCBpbnQgaGV4X2R1bXBfdG9fYnVmZmVyKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6 ZV90IGxlbiwgaW50IHJvd3NpemUsIGludCBncm91cHNpemUsCj4gIAkJaWYgKGopCj4gIAkJCWx4 LS07Cj4gIAl9Cj4gLQlpZiAoIWFzY2lpKQo+ICsJaWYgKCEoZmxhZ3MgJiBIRVhEVU1QX0FTQ0lJ KSkKPiAgCQlnb3RvIG5pbDsKPiAgCj4gIAl3aGlsZSAobHggPCBhc2NpaV9jb2x1bW4pIHsKPiBA QCAtMjA3LDcgKzIwOCw4IEBAIGludCBoZXhfZHVtcF90b19idWZmZXIoY29uc3Qgdm9pZCAqYnVm LCBzaXplX3QgbGVuLCBpbnQgcm93c2l6ZSwgaW50IGdyb3Vwc2l6ZSwKPiAgb3ZlcmZsb3cyOgo+ ICAJbGluZWJ1ZltseCsrXSA9ICdcMCc7Cj4gIG92ZXJmbG93MToKPiAtCXJldHVybiBhc2NpaSA/ IGFzY2lpX2NvbHVtbiArIGxlbiA6IChncm91cHNpemUgKiAyICsgMSkgKiBuZ3JvdXBzIC0gMTsK PiArCXJldHVybiAoZmxhZ3MgJiBIRVhEVU1QX0FTQ0lJKSA/IGFzY2lpX2NvbHVtbiArIGxlbiA6 Cj4gKwkJCQkJIChncm91cHNpemUgKiAyICsgMSkgKiBuZ3JvdXBzIC0gMTsKPiAgfQo+ICBFWFBP UlRfU1lNQk9MKGhleF9kdW1wX3RvX2J1ZmZlcik7Cj4gIAo+IEBAIC0zMzYsOCArMzM4LDcgQEAg dm9pZCBwcmludF9oZXhfZHVtcF9leHQoY29uc3QgY2hhciAqbGV2ZWwsIGNvbnN0IGNoYXIgKnBy ZWZpeF9zdHIsCj4gIAkJfQo+ICAKPiAgCQloZXhfZHVtcF90b19idWZmZXIocHRyICsgaSwgbGlu ZWxlbiwgcm93c2l6ZSwgZ3JvdXBzaXplLAo+IC0JCQkJICAgbGluZWJ1ZiwgbGluZWJ1Zl9sZW4s Cj4gLQkJCQkgICBmbGFncyAmIEhFWERVTVBfQVNDSUkpOwo+ICsJCQkJICAgbGluZWJ1ZiwgbGlu ZWJ1Zl9sZW4sIGZsYWdzKTsKPiAgCj4gIAkJc3dpdGNoIChwcmVmaXhfdHlwZSkgewo+ICAJCWNh c2UgRFVNUF9QUkVGSVhfQUREUkVTUzoKPiBkaWZmIC0tZ2l0IGEvbGliL3Rlc3RfaGV4ZHVtcC5j IGIvbGliL3Rlc3RfaGV4ZHVtcC5jCj4gaW5kZXggNmFiNzVhMjA5YjQzLi5hZTM0MGM1YzFjNmYg MTAwNjQ0Cj4gLS0tIGEvbGliL3Rlc3RfaGV4ZHVtcC5jCj4gKysrIGIvbGliL3Rlc3RfaGV4ZHVt cC5jCj4gQEAgLTE2Niw3ICsxNjYsNyBAQCBzdGF0aWMgdm9pZCBfX2luaXQgdGVzdF9oZXhkdW1w KHNpemVfdCBsZW4sIGludCByb3dzaXplLCBpbnQgZ3JvdXBzaXplLAo+ICAKPiAgCW1lbXNldChy ZWFsLCBGSUxMX0NIQVIsIHNpemVvZihyZWFsKSk7Cj4gIAloZXhfZHVtcF90b19idWZmZXIoZGF0 YV9iLCBsZW4sIHJvd3NpemUsIGdyb3Vwc2l6ZSwgcmVhbCwgc2l6ZW9mKHJlYWwpLAo+IC0JCQkg ICBhc2NpaSk7Cj4gKwkJCSAgIGFzY2lpID8gSEVYRFVNUF9BU0NJSSA6IDApOwo+ICAKPiAgCW1l bXNldCh0ZXN0LCBGSUxMX0NIQVIsIHNpemVvZih0ZXN0KSk7Cj4gIAl0ZXN0X2hleGR1bXBfcHJl cGFyZV90ZXN0KGxlbiwgcm93c2l6ZSwgZ3JvdXBzaXplLCB0ZXN0LCBzaXplb2YodGVzdCksCj4g QEAgLTIwNCw3ICsyMDQsOCBAQCBzdGF0aWMgdm9pZCBfX2luaXQgdGVzdF9oZXhkdW1wX292ZXJm bG93KHNpemVfdCBidWZsZW4sIHNpemVfdCBsZW4sCj4gIAo+ICAJbWVtc2V0KGJ1ZiwgRklMTF9D SEFSLCBzaXplb2YoYnVmKSk7Cj4gIAo+IC0JcmMgPSBoZXhfZHVtcF90b19idWZmZXIoZGF0YV9i LCBsZW4sIHJvd3NpemUsIGdyb3Vwc2l6ZSwgYnVmLCBidWZsZW4sIGFzY2lpKTsKPiArCXJjID0g aGV4X2R1bXBfdG9fYnVmZmVyKGRhdGFfYiwgbGVuLCByb3dzaXplLCBncm91cHNpemUsIGJ1Ziwg YnVmbGVuLAo+ICsJCQkJYXNjaWkgPyBIRVhEVU1QX0FTQ0lJIDogMCk7Cj4gIAo+ICAJLyoKPiAg CSAqIENhbGxlciBtdXN0IHByb3ZpZGUgdGhlIGRhdGEgbGVuZ3RoIG11bHRpcGxlIG9mIGdyb3Vw c2l6ZS4gVGhlCgotLSAKSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIEdyYXBoaWNzIENl bnRlcgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=