From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 2/3] drm/i915/bios: fold pci rom map/unmap into copy function Date: Thu, 21 Nov 2019 15:02:12 +0200 Message-ID: <87blt5wffv.fsf@intel.com> References: <20191120234608.17775-1-lucas.demarchi@intel.com> <20191120234608.17775-2-lucas.demarchi@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6A4F66E148 for ; Thu, 21 Nov 2019 13:02:17 +0000 (UTC) In-Reply-To: <20191120234608.17775-2-lucas.demarchi@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Lucas De Marchi , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAyMCBOb3YgMjAxOSwgTHVjYXMgRGUgTWFyY2hpIDxsdWNhcy5kZW1hcmNoaUBpbnRl bC5jb20+IHdyb3RlOgo+IFdlIGRvbid0IG5lZWQgdG8ga2VlcCB0aGUgcGNpIHJvbSBtYXBwZWQg ZHVyaW5nIHRoZSBlbnRpcmUKPiBpbnRlbF9iaW9zX2luaXQoKSBhbnltb3JlLiBNb3ZlIGl0IHRv IHRoZSBwcmV2aW91cyBjb3B5X3ZidCgpIGZ1bmN0aW9uCj4gYW5kIHJlbmFtZSBpdCB0byBvcHJv bV9nZXRfdmJ0KCkgc2luY2Ugbm93IGl0J3MgcmVzcG9uc2libGUgdG8gdG8gYWxsCj4gb3BlcmF0 aW9ucyByZWxhdGVkIHRvIGdldCB0aGUgdmJ0IGZyb20gdGhlIG9wcm9tLgo+Cj4gdjI6IGZpeCBk b3VibGUgX19pb21lbSBhdHRyaWJ1dGUgZGV0ZWN0ZWQgYnkgc3BhcnNlCj4KPiBTaWduZWQtb2Zm LWJ5OiBMdWNhcyBEZSBNYXJjaGkgPGx1Y2FzLmRlbWFyY2hpQGludGVsLmNvbT4KClJldmlld2Vk LWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgoKPiAtLS0KPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9iaW9zLmMgfCA0MCArKysrKysrKysrKy0tLS0t LS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25z KC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9i aW9zLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuYwo+IGluZGV4 IDhiZGZjMWQ1NTA0MC4uYWE5YjE4MmVmZWU1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9iaW9zLmMKPiBAQCAtMTg5NiwxMiArMTg5NiwxNyBAQCBib29sIGludGVs X2Jpb3NfaXNfdmFsaWRfdmJ0KGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IHNpemUpCj4gIAlyZXR1 cm4gdmJ0Owo+ICB9Cj4gIAo+IC1zdGF0aWMgc3RydWN0IHZidF9oZWFkZXIgKmNvcHlfdmJ0KHZv aWQgX19pb21lbSAqb3Byb20sIHNpemVfdCBzaXplKQo+ICtzdGF0aWMgc3RydWN0IHZidF9oZWFk ZXIgKm9wcm9tX2dldF92YnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICB7 Cj4gLQl2b2lkIF9faW9tZW0gKnAgPSBOVUxMOwo+ICsJc3RydWN0IHBjaV9kZXYgKnBkZXYgPSBk ZXZfcHJpdi0+ZHJtLnBkZXY7Cj4gKwl2b2lkIF9faW9tZW0gKnAgPSBOVUxMLCAqb3Byb207Cj4g IAlzdHJ1Y3QgdmJ0X2hlYWRlciAqdmJ0Owo+ICAJdTE2IHZidF9zaXplOwo+IC0Jc2l6ZV90IGk7 Cj4gKwlzaXplX3QgaSwgc2l6ZTsKPiArCj4gKwlvcHJvbSA9IHBjaV9tYXBfcm9tKHBkZXYsICZz aXplKTsKPiArCWlmICghb3Byb20pCj4gKwkJcmV0dXJuIE5VTEw7Cj4gIAo+ICAJLyogU2NvdXIg bWVtb3J5IGxvb2tpbmcgZm9yIHRoZSBWQlQgc2lnbmF0dXJlLiAqLwo+ICAJZm9yIChpID0gMDsg aSArIDQgPCBzaXplOyBpKyspIHsKPiBAQCAtMTkxNCwyMyArMTkxOSwyMyBAQCBzdGF0aWMgc3Ry dWN0IHZidF9oZWFkZXIgKmNvcHlfdmJ0KHZvaWQgX19pb21lbSAqb3Byb20sIHNpemVfdCBzaXpl KQo+ICAJfQo+ICAKPiAgCWlmICghcCkKPiAtCQlyZXR1cm4gTlVMTDsKPiArCQlnb3RvIGVycl91 bm1hcF9vcHJvbTsKPiAgCj4gIAlpZiAoc2l6ZW9mKHN0cnVjdCB2YnRfaGVhZGVyKSA+IHNpemUp IHsKPiAgCQlEUk1fREVCVUdfRFJJVkVSKCJWQlQgaGVhZGVyIGluY29tcGxldGVcbiIpOwo+IC0J CXJldHVybiBOVUxMOwo+ICsJCWdvdG8gZXJyX3VubWFwX29wcm9tOwo+ICAJfQo+ICAKPiAgCXZi dF9zaXplID0gaW9yZWFkMTYocCArIG9mZnNldG9mKHN0cnVjdCB2YnRfaGVhZGVyLCB2YnRfc2l6 ZSkpOwo+ICAJaWYgKHZidF9zaXplID4gc2l6ZSkgewo+ICAJCURSTV9ERUJVR19EUklWRVIoIlZC VCBpbmNvbXBsZXRlICh2YnRfc2l6ZSBvdmVyZmxvd3MpXG4iKTsKPiAtCQlyZXR1cm4gTlVMTDsK PiArCQlnb3RvIGVycl91bm1hcF9vcHJvbTsKPiAgCX0KPiAgCj4gIAkvKiBUaGUgcmVzdCB3aWxs IGJlIHZhbGlkYXRlZCBieSBpbnRlbF9iaW9zX2lzX3ZhbGlkX3ZidCgpICovCj4gIAl2YnQgPSBr bWFsbG9jKHZidF9zaXplLCBHRlBfS0VSTkVMKTsKPiAgCWlmICghdmJ0KQo+IC0JCXJldHVybiBO VUxMOwo+ICsJCWdvdG8gZXJyX3VubWFwX29wcm9tOwo+ICAKPiAgCW1lbWNweV9mcm9taW8odmJ0 LCBwLCB2YnRfc2l6ZSk7Cj4gIAo+IEBAIC0xOTQxLDYgKzE5NDYsOCBAQCBzdGF0aWMgc3RydWN0 IHZidF9oZWFkZXIgKmNvcHlfdmJ0KHZvaWQgX19pb21lbSAqb3Byb20sIHNpemVfdCBzaXplKQo+ ICAKPiAgZXJyX2ZyZWVfdmJ0Ogo+ICAJa2ZyZWUodmJ0KTsKPiArZXJyX3VubWFwX29wcm9tOgo+ ICsJcGNpX3VubWFwX3JvbShwZGV2LCBvcHJvbSk7Cj4gIAo+ICAJcmV0dXJuIE5VTEw7Cj4gIH0K PiBAQCAtMTk1NSwxMCArMTk2Miw5IEBAIHN0YXRpYyBzdHJ1Y3QgdmJ0X2hlYWRlciAqY29weV92 YnQodm9pZCBfX2lvbWVtICpvcHJvbSwgc2l6ZV90IHNpemUpCj4gICAqLwo+ICB2b2lkIGludGVs X2Jpb3NfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIHsKPiAtCXN0 cnVjdCBwY2lfZGV2ICpwZGV2ID0gZGV2X3ByaXYtPmRybS5wZGV2Owo+ICAJY29uc3Qgc3RydWN0 IHZidF9oZWFkZXIgKnZidCA9IGRldl9wcml2LT5vcHJlZ2lvbi52YnQ7Cj4gKwlzdHJ1Y3QgdmJ0 X2hlYWRlciAqb3Byb21fdmJ0ID0gTlVMTDsKPiAgCWNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpi ZGI7Cj4gLQl1OCBfX2lvbWVtICpvcHJvbSA9IE5VTEw7Cj4gIAo+ICAJSU5JVF9MSVNUX0hFQUQo JmRldl9wcml2LT52YnQuZGlzcGxheV9kZXZpY2VzKTsKPiAgCj4gQEAgLTE5NzEsMTUgKzE5Nzcs MTEgQEAgdm9pZCBpbnRlbF9iaW9zX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQo+ICAKPiAgCS8qIElmIHRoZSBPcFJlZ2lvbiBkb2VzIG5vdCBoYXZlIFZCVCwgbG9vayBp biBQQ0kgUk9NLiAqLwo+ICAJaWYgKCF2YnQpIHsKPiAtCQlzaXplX3Qgc2l6ZTsKPiAtCj4gLQkJ b3Byb20gPSBwY2lfbWFwX3JvbShwZGV2LCAmc2l6ZSk7Cj4gLQkJaWYgKCFvcHJvbSkKPiArCQlv cHJvbV92YnQgPSBvcHJvbV9nZXRfdmJ0KGRldl9wcml2KTsKPiArCQlpZiAoIW9wcm9tX3ZidCkK PiAgCQkJZ290byBvdXQ7Cj4gIAo+IC0JCXZidCA9IGNvcHlfdmJ0KG9wcm9tLCBzaXplKTsKPiAt CQlpZiAoIXZidCkKPiAtCQkJZ290byBvdXQ7Cj4gKwkJdmJ0ID0gb3Byb21fdmJ0Owo+ICAKPiAg CQlEUk1fREVCVUdfS01TKCJGb3VuZCB2YWxpZCBWQlQgaW4gUENJIFJPTVxuIik7Cj4gIAl9Cj4g QEAgLTIwMTIsMTEgKzIwMTQsNyBAQCB2b2lkIGludGVsX2Jpb3NfaW5pdChzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAkJaW5pdF92YnRfbWlzc2luZ19kZWZhdWx0cyhkZXZf cHJpdik7Cj4gIAl9Cj4gIAo+IC0JaWYgKG9wcm9tKQo+IC0JCXBjaV91bm1hcF9yb20ocGRldiwg b3Byb20pOwo+IC0KPiAtCWlmICh2YnQgIT0gZGV2X3ByaXYtPm9wcmVnaW9uLnZidCkKPiAtCQlr ZnJlZSh2YnQpOwo+ICsJa2ZyZWUob3Byb21fdmJ0KTsKPiAgfQo+ICAKPiAgLyoqCgotLSAKSmFu aSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIEdyYXBoaWNzIENlbnRlcgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng= 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=ham 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 E28BAC432C0 for ; Thu, 21 Nov 2019 13:02:19 +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 C08D8208A1 for ; Thu, 21 Nov 2019 13:02:19 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C08D8208A1 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.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 4A6626E148; Thu, 21 Nov 2019 13:02:19 +0000 (UTC) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6A4F66E148 for ; Thu, 21 Nov 2019 13:02:17 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Nov 2019 05:02:17 -0800 X-IronPort-AV: E=Sophos;i="5.69,224,1571727600"; d="scan'208";a="201116297" Received: from jnikula-mobl3.fi.intel.com (HELO localhost) ([10.237.66.161]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Nov 2019 05:02:14 -0800 From: Jani Nikula To: Lucas De Marchi , intel-gfx@lists.freedesktop.org In-Reply-To: <20191120234608.17775-2-lucas.demarchi@intel.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20191120234608.17775-1-lucas.demarchi@intel.com> <20191120234608.17775-2-lucas.demarchi@intel.com> Date: Thu, 21 Nov 2019 15:02:12 +0200 Message-ID: <87blt5wffv.fsf@intel.com> MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH 2/3] drm/i915/bios: fold pci rom map/unmap into copy function 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: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191121130212.ETzg7bLQNxviZb7jUysnwhC_Myk-ogCPG_Wqp5uiDOo@z> T24gV2VkLCAyMCBOb3YgMjAxOSwgTHVjYXMgRGUgTWFyY2hpIDxsdWNhcy5kZW1hcmNoaUBpbnRl bC5jb20+IHdyb3RlOgo+IFdlIGRvbid0IG5lZWQgdG8ga2VlcCB0aGUgcGNpIHJvbSBtYXBwZWQg ZHVyaW5nIHRoZSBlbnRpcmUKPiBpbnRlbF9iaW9zX2luaXQoKSBhbnltb3JlLiBNb3ZlIGl0IHRv IHRoZSBwcmV2aW91cyBjb3B5X3ZidCgpIGZ1bmN0aW9uCj4gYW5kIHJlbmFtZSBpdCB0byBvcHJv bV9nZXRfdmJ0KCkgc2luY2Ugbm93IGl0J3MgcmVzcG9uc2libGUgdG8gdG8gYWxsCj4gb3BlcmF0 aW9ucyByZWxhdGVkIHRvIGdldCB0aGUgdmJ0IGZyb20gdGhlIG9wcm9tLgo+Cj4gdjI6IGZpeCBk b3VibGUgX19pb21lbSBhdHRyaWJ1dGUgZGV0ZWN0ZWQgYnkgc3BhcnNlCj4KPiBTaWduZWQtb2Zm LWJ5OiBMdWNhcyBEZSBNYXJjaGkgPGx1Y2FzLmRlbWFyY2hpQGludGVsLmNvbT4KClJldmlld2Vk LWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgoKPiAtLS0KPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9iaW9zLmMgfCA0MCArKysrKysrKysrKy0tLS0t LS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25z KC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9i aW9zLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuYwo+IGluZGV4 IDhiZGZjMWQ1NTA0MC4uYWE5YjE4MmVmZWU1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9iaW9zLmMKPiBAQCAtMTg5NiwxMiArMTg5NiwxNyBAQCBib29sIGludGVs X2Jpb3NfaXNfdmFsaWRfdmJ0KGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IHNpemUpCj4gIAlyZXR1 cm4gdmJ0Owo+ICB9Cj4gIAo+IC1zdGF0aWMgc3RydWN0IHZidF9oZWFkZXIgKmNvcHlfdmJ0KHZv aWQgX19pb21lbSAqb3Byb20sIHNpemVfdCBzaXplKQo+ICtzdGF0aWMgc3RydWN0IHZidF9oZWFk ZXIgKm9wcm9tX2dldF92YnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICB7 Cj4gLQl2b2lkIF9faW9tZW0gKnAgPSBOVUxMOwo+ICsJc3RydWN0IHBjaV9kZXYgKnBkZXYgPSBk ZXZfcHJpdi0+ZHJtLnBkZXY7Cj4gKwl2b2lkIF9faW9tZW0gKnAgPSBOVUxMLCAqb3Byb207Cj4g IAlzdHJ1Y3QgdmJ0X2hlYWRlciAqdmJ0Owo+ICAJdTE2IHZidF9zaXplOwo+IC0Jc2l6ZV90IGk7 Cj4gKwlzaXplX3QgaSwgc2l6ZTsKPiArCj4gKwlvcHJvbSA9IHBjaV9tYXBfcm9tKHBkZXYsICZz aXplKTsKPiArCWlmICghb3Byb20pCj4gKwkJcmV0dXJuIE5VTEw7Cj4gIAo+ICAJLyogU2NvdXIg bWVtb3J5IGxvb2tpbmcgZm9yIHRoZSBWQlQgc2lnbmF0dXJlLiAqLwo+ICAJZm9yIChpID0gMDsg aSArIDQgPCBzaXplOyBpKyspIHsKPiBAQCAtMTkxNCwyMyArMTkxOSwyMyBAQCBzdGF0aWMgc3Ry dWN0IHZidF9oZWFkZXIgKmNvcHlfdmJ0KHZvaWQgX19pb21lbSAqb3Byb20sIHNpemVfdCBzaXpl KQo+ICAJfQo+ICAKPiAgCWlmICghcCkKPiAtCQlyZXR1cm4gTlVMTDsKPiArCQlnb3RvIGVycl91 bm1hcF9vcHJvbTsKPiAgCj4gIAlpZiAoc2l6ZW9mKHN0cnVjdCB2YnRfaGVhZGVyKSA+IHNpemUp IHsKPiAgCQlEUk1fREVCVUdfRFJJVkVSKCJWQlQgaGVhZGVyIGluY29tcGxldGVcbiIpOwo+IC0J CXJldHVybiBOVUxMOwo+ICsJCWdvdG8gZXJyX3VubWFwX29wcm9tOwo+ICAJfQo+ICAKPiAgCXZi dF9zaXplID0gaW9yZWFkMTYocCArIG9mZnNldG9mKHN0cnVjdCB2YnRfaGVhZGVyLCB2YnRfc2l6 ZSkpOwo+ICAJaWYgKHZidF9zaXplID4gc2l6ZSkgewo+ICAJCURSTV9ERUJVR19EUklWRVIoIlZC VCBpbmNvbXBsZXRlICh2YnRfc2l6ZSBvdmVyZmxvd3MpXG4iKTsKPiAtCQlyZXR1cm4gTlVMTDsK PiArCQlnb3RvIGVycl91bm1hcF9vcHJvbTsKPiAgCX0KPiAgCj4gIAkvKiBUaGUgcmVzdCB3aWxs IGJlIHZhbGlkYXRlZCBieSBpbnRlbF9iaW9zX2lzX3ZhbGlkX3ZidCgpICovCj4gIAl2YnQgPSBr bWFsbG9jKHZidF9zaXplLCBHRlBfS0VSTkVMKTsKPiAgCWlmICghdmJ0KQo+IC0JCXJldHVybiBO VUxMOwo+ICsJCWdvdG8gZXJyX3VubWFwX29wcm9tOwo+ICAKPiAgCW1lbWNweV9mcm9taW8odmJ0 LCBwLCB2YnRfc2l6ZSk7Cj4gIAo+IEBAIC0xOTQxLDYgKzE5NDYsOCBAQCBzdGF0aWMgc3RydWN0 IHZidF9oZWFkZXIgKmNvcHlfdmJ0KHZvaWQgX19pb21lbSAqb3Byb20sIHNpemVfdCBzaXplKQo+ ICAKPiAgZXJyX2ZyZWVfdmJ0Ogo+ICAJa2ZyZWUodmJ0KTsKPiArZXJyX3VubWFwX29wcm9tOgo+ ICsJcGNpX3VubWFwX3JvbShwZGV2LCBvcHJvbSk7Cj4gIAo+ICAJcmV0dXJuIE5VTEw7Cj4gIH0K PiBAQCAtMTk1NSwxMCArMTk2Miw5IEBAIHN0YXRpYyBzdHJ1Y3QgdmJ0X2hlYWRlciAqY29weV92 YnQodm9pZCBfX2lvbWVtICpvcHJvbSwgc2l6ZV90IHNpemUpCj4gICAqLwo+ICB2b2lkIGludGVs X2Jpb3NfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIHsKPiAtCXN0 cnVjdCBwY2lfZGV2ICpwZGV2ID0gZGV2X3ByaXYtPmRybS5wZGV2Owo+ICAJY29uc3Qgc3RydWN0 IHZidF9oZWFkZXIgKnZidCA9IGRldl9wcml2LT5vcHJlZ2lvbi52YnQ7Cj4gKwlzdHJ1Y3QgdmJ0 X2hlYWRlciAqb3Byb21fdmJ0ID0gTlVMTDsKPiAgCWNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpi ZGI7Cj4gLQl1OCBfX2lvbWVtICpvcHJvbSA9IE5VTEw7Cj4gIAo+ICAJSU5JVF9MSVNUX0hFQUQo JmRldl9wcml2LT52YnQuZGlzcGxheV9kZXZpY2VzKTsKPiAgCj4gQEAgLTE5NzEsMTUgKzE5Nzcs MTEgQEAgdm9pZCBpbnRlbF9iaW9zX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQo+ICAKPiAgCS8qIElmIHRoZSBPcFJlZ2lvbiBkb2VzIG5vdCBoYXZlIFZCVCwgbG9vayBp biBQQ0kgUk9NLiAqLwo+ICAJaWYgKCF2YnQpIHsKPiAtCQlzaXplX3Qgc2l6ZTsKPiAtCj4gLQkJ b3Byb20gPSBwY2lfbWFwX3JvbShwZGV2LCAmc2l6ZSk7Cj4gLQkJaWYgKCFvcHJvbSkKPiArCQlv cHJvbV92YnQgPSBvcHJvbV9nZXRfdmJ0KGRldl9wcml2KTsKPiArCQlpZiAoIW9wcm9tX3ZidCkK PiAgCQkJZ290byBvdXQ7Cj4gIAo+IC0JCXZidCA9IGNvcHlfdmJ0KG9wcm9tLCBzaXplKTsKPiAt CQlpZiAoIXZidCkKPiAtCQkJZ290byBvdXQ7Cj4gKwkJdmJ0ID0gb3Byb21fdmJ0Owo+ICAKPiAg CQlEUk1fREVCVUdfS01TKCJGb3VuZCB2YWxpZCBWQlQgaW4gUENJIFJPTVxuIik7Cj4gIAl9Cj4g QEAgLTIwMTIsMTEgKzIwMTQsNyBAQCB2b2lkIGludGVsX2Jpb3NfaW5pdChzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAkJaW5pdF92YnRfbWlzc2luZ19kZWZhdWx0cyhkZXZf cHJpdik7Cj4gIAl9Cj4gIAo+IC0JaWYgKG9wcm9tKQo+IC0JCXBjaV91bm1hcF9yb20ocGRldiwg b3Byb20pOwo+IC0KPiAtCWlmICh2YnQgIT0gZGV2X3ByaXYtPm9wcmVnaW9uLnZidCkKPiAtCQlr ZnJlZSh2YnQpOwo+ICsJa2ZyZWUob3Byb21fdmJ0KTsKPiAgfQo+ICAKPiAgLyoqCgotLSAKSmFu aSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIEdyYXBoaWNzIENlbnRlcgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=