Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp2642800ybk; Mon, 18 May 2020 04:29:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx6MmLy0gPTorqbUlCB3YTuLgXtkTPhahh1RXDSuCZscUDU91VkUV/ykrbsaWRZ9+zi5tCN X-Received: by 2002:a05:6402:946:: with SMTP id h6mr13831299edz.245.1589801396022; Mon, 18 May 2020 04:29:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589801396; cv=none; d=google.com; s=arc-20160816; b=DmH992jCOvUdURRjOgwyodRw0refewFrwSX1jx7nCSzN27DS4RvZXHRLn7/yoT3ICM ZiaLhyz4n7c71FHc6BZx/NigM6b//6cnLLX3wnw+cOU3WJY2U2hAJgp+N4m8d8uHc1LH KyrDbRcSMfyunzICsnRsPvsCbARrSFfXX0ZhOu277wD48zPIkNcqyrGIiDIcfHJi3/DU iBY+v7P3xsoG2t35dz5nQfba77M9WTSqIKo2w2ixXGo8xNuaIfEirxX4lZ1s1EnYEJ/q rx8Y1a/D11AWvQgULectTlqdaS+qcu8dX61EuPPSY1oDUUUrOyZ9HDi7tsLKd3+p8V/R QSmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :dkim-signature; bh=2rbiAR21QY5qjKzRX1l4eX3iPWNuIOneYTZsVaQMP9s=; b=1IGeECimbJsQZqTFJIFSJef/ZJqgzaHw6+7pFHbLeJiwhkViGMABc6P/PMMP1iPHj/ W2+cJeL1lP+fE2Gffv3b2KJEeK4rOJ65if+PJ5EmMOGfXDnhZzDl7AzmeoJWUN6ubiyW vUwQIfg6B2x88K3I4E1p7YIGpQ4Dt3O6gWqCPob48WcfMe0nkY5GFalqU9SmYX+kTKNd nrtAh7rwE9KBpI/C5ohXMp3X/+KaLfkmNmsOh547rh0nWdNV+N4GJ8WlHM/Wi5LMZ0AB I2HTxa2bj9ILNEa0WAzZTm50GfqH8q1GpB9weuylnPsXfHf5zO3EJc7jdQK3A47zSEW4 irjA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=fDQS7ETM; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o16si6487688ejx.200.2020.05.18.04.29.32; Mon, 18 May 2020 04:29:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=fDQS7ETM; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727006AbgERL11 (ORCPT + 99 others); Mon, 18 May 2020 07:27:27 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:52750 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726557AbgERL11 (ORCPT ); Mon, 18 May 2020 07:27:27 -0400 X-UUID: 6e3ea54b60ae48c399f5650b22425cd5-20200518 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=2rbiAR21QY5qjKzRX1l4eX3iPWNuIOneYTZsVaQMP9s=; b=fDQS7ETMkWe6ZGkaeVE/iTOvnq7QHG2CGzOnvRYyP4gEG/xfzlWqFoz7Q+nzl4Uk+BQiRIBoE0CaUevL4NML7maoxO/GuQfxccs5SvoslzZPiwL46E9B17tbEC9+5JyMyixK5OykgkQ4v9zytspJZGLn3MC7ZBf2X5z+MIoNPiE=; X-UUID: 6e3ea54b60ae48c399f5650b22425cd5-20200518 Received: from mtkcas08.mediatek.inc [(172.21.101.126)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1845183124; Mon, 18 May 2020 19:27:16 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs01n1.mediatek.inc (172.21.101.68) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 18 May 2020 19:27:14 +0800 Received: from [172.21.84.99] (172.21.84.99) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 18 May 2020 19:27:13 +0800 Message-ID: <1589801235.16436.12.camel@mtksdccf07> Subject: Re: [PATCH v3 2/4] kasan: record and print the free track From: Walter Wu To: Dmitry Vyukov CC: Andrey Ryabinin , Alexander Potapenko , Matthias Brugger , kasan-dev , Linux-MM , LKML , Linux ARM , wsd_upstream , Date: Mon, 18 May 2020 19:27:15 +0800 In-Reply-To: References: <20200518062730.4665-1-walter-zh.wu@mediatek.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gTW9uLCAyMDIwLTA1LTE4IGF0IDEyOjE4ICswMjAwLCBEbWl0cnkgVnl1a292IHdyb3RlOg0K PiBPbiBNb24sIE1heSAxOCwgMjAyMCBhdCA4OjI3IEFNIFdhbHRlciBXdSA8d2FsdGVyLXpoLnd1 QG1lZGlhdGVrLmNvbT4gd3JvdGU6DQo+ID4NCj4gPiBNb3ZlIGZyZWUgdHJhY2sgZnJvbSBzbHVi IGFsbG9jIG1ldGEtZGF0YSB0byBzbHViIGZyZWUgbWV0YS1kYXRhIGluDQo+ID4gb3JkZXIgdG8g bWFrZSBzdHJ1Y3Qga2FzYW5fZnJlZV9tZXRhIHNpemUgaXMgMTYgYnl0ZXMuIEl0IGlzIGEgZ29v ZA0KPiA+IHNpemUgYmVjYXVzZSBpdCBpcyB0aGUgbWluaW1hbCByZWR6b25lIHNpemUgYW5kIGEg Z29vZCBudW1iZXIgb2YNCj4gPiBhbGlnbm1lbnQuDQo+ID4NCj4gPiBGb3IgZnJlZSB0cmFjayBp biBnZW5lcmljIEtBU0FOLCB3ZSBkbyB0aGUgbW9kaWZpY2F0aW9uIGluIHN0cnVjdA0KPiA+IGth c2FuX2FsbG9jX21ldGEgYW5kIGthc2FuX2ZyZWVfbWV0YToNCj4gPiAtIHJlbW92ZSBmcmVlIHRy YWNrIGZyb20ga2FzYW5fYWxsb2NfbWV0YS4NCj4gPiAtIGFkZCBmcmVlIHRyYWNrIGludG8ga2Fz YW5fZnJlZV9tZXRhLg0KPiA+DQo+ID4gWzFdaHR0cHM6Ly9idWd6aWxsYS5rZXJuZWwub3JnL3No b3dfYnVnLmNnaT9pZD0xOTg0MzcNCj4gPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFdhbHRlciBXdSA8 d2FsdGVyLXpoLnd1QG1lZGlhdGVrLmNvbT4NCj4gPiBTdWdnZXN0ZWQtYnk6IERtaXRyeSBWeXVr b3YgPGR2eXVrb3ZAZ29vZ2xlLmNvbT4NCj4gPiBDYzogQW5kcmV5IFJ5YWJpbmluIDxhcnlhYmlu aW5AdmlydHVvenpvLmNvbT4NCj4gPiBDYzogRG1pdHJ5IFZ5dWtvdiA8ZHZ5dWtvdkBnb29nbGUu Y29tPg0KPiA+IENjOiBBbGV4YW5kZXIgUG90YXBlbmtvIDxnbGlkZXJAZ29vZ2xlLmNvbT4NCj4g PiAtLS0NCj4gPiAgbW0va2FzYW4vY29tbW9uLmMgIHwgMzMgKysrKysrKysrKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQo+ID4gIG1tL2thc2FuL2dlbmVyaWMuYyB8IDE4ICsrKysrKysrKysrKysr KysrKw0KPiA+ICBtbS9rYXNhbi9rYXNhbi5oICAgfCAgNyArKysrKysrDQo+ID4gIG1tL2thc2Fu L3JlcG9ydC5jICB8IDIwIC0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gIG1tL2thc2FuL3RhZ3Mu YyAgICB8IDM3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiAgNSBm aWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspLCA0MyBkZWxldGlvbnMoLSkNCj4gPg0KPiA+ IGRpZmYgLS1naXQgYS9tbS9rYXNhbi9jb21tb24uYyBiL21tL2thc2FuL2NvbW1vbi5jDQo+ID4g aW5kZXggOGJjNjE4Mjg5YmIxLi42NTAwYmMyYmI3MGMgMTAwNjQ0DQo+ID4gLS0tIGEvbW0va2Fz YW4vY29tbW9uLmMNCj4gPiArKysgYi9tbS9rYXNhbi9jb21tb24uYw0KPiA+IEBAIC01MSw3ICs1 MSw3IEBAIGRlcG90X3N0YWNrX2hhbmRsZV90IGthc2FuX3NhdmVfc3RhY2soZ2ZwX3QgZmxhZ3Mp DQo+ID4gICAgICAgICByZXR1cm4gc3RhY2tfZGVwb3Rfc2F2ZShlbnRyaWVzLCBucl9lbnRyaWVz LCBmbGFncyk7DQo+ID4gIH0NCj4gPg0KPiA+IC1zdGF0aWMgaW5saW5lIHZvaWQgc2V0X3RyYWNr KHN0cnVjdCBrYXNhbl90cmFjayAqdHJhY2ssIGdmcF90IGZsYWdzKQ0KPiA+ICt2b2lkIGthc2Fu X3NldF90cmFjayhzdHJ1Y3Qga2FzYW5fdHJhY2sgKnRyYWNrLCBnZnBfdCBmbGFncykNCj4gPiAg ew0KPiA+ICAgICAgICAgdHJhY2stPnBpZCA9IGN1cnJlbnQtPnBpZDsNCj4gPiAgICAgICAgIHRy YWNrLT5zdGFjayA9IGthc2FuX3NhdmVfc3RhY2soZmxhZ3MpOw0KPiA+IEBAIC0yNDksOSArMjQ5 LDcgQEAgdm9pZCBrYXNhbl9jYWNoZV9jcmVhdGUoc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLCB1 bnNpZ25lZCBpbnQgKnNpemUsDQo+ID4gICAgICAgICAqc2l6ZSArPSBzaXplb2Yoc3RydWN0IGth c2FuX2FsbG9jX21ldGEpOw0KPiA+DQo+ID4gICAgICAgICAvKiBBZGQgZnJlZSBtZXRhLiAqLw0K PiA+IC0gICAgICAgaWYgKElTX0VOQUJMRUQoQ09ORklHX0tBU0FOX0dFTkVSSUMpICYmDQo+ID4g LSAgICAgICAgICAgKGNhY2hlLT5mbGFncyAmIFNMQUJfVFlQRVNBRkVfQllfUkNVIHx8IGNhY2hl LT5jdG9yIHx8DQo+ID4gLSAgICAgICAgICAgIGNhY2hlLT5vYmplY3Rfc2l6ZSA8IHNpemVvZihz dHJ1Y3Qga2FzYW5fZnJlZV9tZXRhKSkpIHsNCj4gPiArICAgICAgIGlmIChJU19FTkFCTEVEKENP TkZJR19LQVNBTl9HRU5FUklDKSkgew0KPiANCj4gV2h5IGRvIHdlIG5lZWQgdG8gaW5jcmVhc2Ug b2JqZWN0IHNpemUgdW5jb25kaXRpb25hbGx5Pw0KPiBXZSBvbmx5IHN0b3JlIGluZm8gaW4gZnJl ZSB0cmFjayB3aGVuIHRoZSBvYmplY3QgaXMgZnJlZSwgc28gSSB3b3VsZA0KPiBhc3N1bWUgd2Ug c3RpbGwgY2FuIGdlbmVyYWxseSBvdmVybGFwIGZyZWUgdHJhY2sgYW5kIHRoZSBvYmplY3QNCj4g aXRzZWxmLiBXZSBzdG9yZSBmcmVlIHRyYWNrIGF0IHRoZSBzYW1lIHRpbWUgd2UgdXNlIHRoZSBx dWFyYW50aW5lDQo+IGxpbmssIGFuZCB0aGUgcXVhcmFudGluZSBsaW5rIHdhcyBvdmVybGFwcGVk IHdpdGggdGhlIG9iamVjdCBqdXN0DQo+IGZpbmUuDQo+IFdpdGggdGhpcyBjaGFuZ2Ugd2UgaW5k ZWVkIGluY3JlYXNlIG9iamVjdCBzaXplLCB3aGljaCB3ZSBkbyBub3Qgd2FudA0KPiBpbiBnZW5l cmFsLg0KPiANCg0KSWYgaXQgZG9lc24ndCBhZGQgZnJlZSBtZXRhLCBidXQgd2UgYWx3YXlzIHN0 b3JlIGZyZWUgdHJhY2sgaW50byB0aGUNCm9iamVjdCwgSXMgaXQgc2FmZT8NCg0KPiANCj4gPiAg ICAgICAgICAgICAgICAgY2FjaGUtPmthc2FuX2luZm8uZnJlZV9tZXRhX29mZnNldCA9ICpzaXpl Ow0KPiA+ICAgICAgICAgICAgICAgICAqc2l6ZSArPSBzaXplb2Yoc3RydWN0IGthc2FuX2ZyZWVf bWV0YSk7DQo+ID4gICAgICAgICB9DQo+ID4gQEAgLTI5OSwyNCArMjk3LDYgQEAgc3RydWN0IGth c2FuX2ZyZWVfbWV0YSAqZ2V0X2ZyZWVfaW5mbyhzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUsDQo+ ID4gICAgICAgICByZXR1cm4gKHZvaWQgKilvYmplY3QgKyBjYWNoZS0+a2FzYW5faW5mby5mcmVl X21ldGFfb2Zmc2V0Ow0KPiA+ICB9DQo+ID4NCj4gPiAtDQo+ID4gLXN0YXRpYyB2b2lkIGthc2Fu X3NldF9mcmVlX2luZm8oc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLA0KPiA+IC0gICAgICAgICAg ICAgICB2b2lkICpvYmplY3QsIHU4IHRhZykNCj4gPiAtew0KPiA+IC0gICAgICAgc3RydWN0IGth c2FuX2FsbG9jX21ldGEgKmFsbG9jX21ldGE7DQo+ID4gLSAgICAgICB1OCBpZHggPSAwOw0KPiA+ IC0NCj4gPiAtICAgICAgIGFsbG9jX21ldGEgPSBnZXRfYWxsb2NfaW5mbyhjYWNoZSwgb2JqZWN0 KTsNCj4gPiAtDQo+ID4gLSNpZmRlZiBDT05GSUdfS0FTQU5fU1dfVEFHU19JREVOVElGWQ0KPiA+ IC0gICAgICAgaWR4ID0gYWxsb2NfbWV0YS0+ZnJlZV90cmFja19pZHg7DQo+ID4gLSAgICAgICBh bGxvY19tZXRhLT5mcmVlX3BvaW50ZXJfdGFnW2lkeF0gPSB0YWc7DQo+ID4gLSAgICAgICBhbGxv Y19tZXRhLT5mcmVlX3RyYWNrX2lkeCA9IChpZHggKyAxKSAlIEtBU0FOX05SX0ZSRUVfU1RBQ0tT Ow0KPiA+IC0jZW5kaWYNCj4gPiAtDQo+ID4gLSAgICAgICBzZXRfdHJhY2soJmFsbG9jX21ldGEt PmZyZWVfdHJhY2tbaWR4XSwgR0ZQX05PV0FJVCk7DQo+ID4gLX0NCj4gPiAtDQo+ID4gIHZvaWQg a2FzYW5fcG9pc29uX3NsYWIoc3RydWN0IHBhZ2UgKnBhZ2UpDQo+ID4gIHsNCj4gPiAgICAgICAg IHVuc2lnbmVkIGxvbmcgaTsNCj4gPiBAQCAtMzk2LDYgKzM3NiwxMyBAQCB2b2lkICogX19tdXN0 X2NoZWNrIGthc2FuX2luaXRfc2xhYl9vYmooc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLA0KPiA+ ICAgICAgICAgYWxsb2NfaW5mbyA9IGdldF9hbGxvY19pbmZvKGNhY2hlLCBvYmplY3QpOw0KPiA+ ICAgICAgICAgX19tZW1zZXQoYWxsb2NfaW5mbywgMCwgc2l6ZW9mKCphbGxvY19pbmZvKSk7DQo+ ID4NCj4gPiArICAgICAgIGlmIChJU19FTkFCTEVEKENPTkZJR19LQVNBTl9HRU5FUklDKSkgew0K PiA+ICsgICAgICAgICAgICAgICBzdHJ1Y3Qga2FzYW5fZnJlZV9tZXRhICpmcmVlX2luZm87DQo+ ID4gKw0KPiA+ICsgICAgICAgICAgICAgICBmcmVlX2luZm8gPSBnZXRfZnJlZV9pbmZvKGNhY2hl LCBvYmplY3QpOw0KPiA+ICsgICAgICAgICAgICAgICBfX21lbXNldChmcmVlX2luZm8sIDAsIHNp emVvZigqZnJlZV9pbmZvKSk7DQo+IA0KPiBJZiB3ZSBvdmVybGFwIGZyZWUgdHJhY2sgd2l0aCBv YmplY3QsIHRoaXMgd2lsbCBub3QgYmUgbmVlZGVkIGFzIHdlbGwsIHJpZ2h0Pw0KPiANCg0KU2hv dWxkIHdlIG5vdCBjb25zaWRlciB0aG9zZSBvYmplY3RzIHdoaWNoIGhhdmUgYWRkaW5nIGZyZWUg bWV0YT8gSWYNCnRoZXkgZXhpc3QsIHRoZW4gd2Ugc2hvdWxkIGluaXQgdGhlaXIgbWV0YSBkYXRh IHdoZW4gb2JqZWN0IHJlLWFsbG9jYXRlLg0KDQpzdHJ1Y3Qga2FzYW5fZnJlZV9tZXRhIHsNCiAg ICBzdHJ1Y3QgcWxpc3Rfbm9kZSBxdWFyYW50aW5lX2xpbms7DQogICAgc3RydWN0IGthc2FuX3Ry YWNrIGZyZWVfdHJhY2s7DQp9Ow0KDQoNCj4gPiArICAgICAgIH0NCj4gPiArDQo+ID4gICAgICAg ICBpZiAoSVNfRU5BQkxFRChDT05GSUdfS0FTQU5fU1dfVEFHUykpDQo+ID4gICAgICAgICAgICAg ICAgIG9iamVjdCA9IHNldF90YWcob2JqZWN0LA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgYXNzaWduX3RhZyhjYWNoZSwgb2JqZWN0LCB0cnVlLCBmYWxzZSkpOw0KPiA+IEBA IC00OTIsNyArNDc5LDcgQEAgc3RhdGljIHZvaWQgKl9fa2FzYW5fa21hbGxvYyhzdHJ1Y3Qga21l bV9jYWNoZSAqY2FjaGUsIGNvbnN0IHZvaWQgKm9iamVjdCwNCj4gPiAgICAgICAgICAgICAgICAg S0FTQU5fS01BTExPQ19SRURaT05FKTsNCj4gPg0KPiA+ICAgICAgICAgaWYgKGNhY2hlLT5mbGFn cyAmIFNMQUJfS0FTQU4pDQo+ID4gLSAgICAgICAgICAgICAgIHNldF90cmFjaygmZ2V0X2FsbG9j X2luZm8oY2FjaGUsIG9iamVjdCktPmFsbG9jX3RyYWNrLCBmbGFncyk7DQo+ID4gKyAgICAgICAg ICAgICAgIGthc2FuX3NldF90cmFjaygmZ2V0X2FsbG9jX2luZm8oY2FjaGUsIG9iamVjdCktPmFs bG9jX3RyYWNrLCBmbGFncyk7DQo+ID4NCj4gPiAgICAgICAgIHJldHVybiBzZXRfdGFnKG9iamVj dCwgdGFnKTsNCj4gPiAgfQ0KPiA+IGRpZmYgLS1naXQgYS9tbS9rYXNhbi9nZW5lcmljLmMgYi9t bS9rYXNhbi9nZW5lcmljLmMNCj4gPiBpbmRleCA3OGQ4ZTBhNzVhOGEuLjk4OGJjMDk1YjczOCAx MDA2NDQNCj4gPiAtLS0gYS9tbS9rYXNhbi9nZW5lcmljLmMNCj4gPiArKysgYi9tbS9rYXNhbi9n ZW5lcmljLmMNCj4gPiBAQCAtMzQ1LDMgKzM0NSwyMSBAQCB2b2lkIGthc2FuX3JlY29yZF9hdXhf c3RhY2sodm9pZCAqYWRkcikNCj4gPiAgICAgICAgICAgICAgICAgYWxsb2NfaW5mby0+cmN1X3N0 YWNrWzFdID0gYWxsb2NfaW5mby0+cmN1X3N0YWNrWzBdOw0KPiA+ICAgICAgICAgYWxsb2NfaW5m by0+cmN1X3N0YWNrWzBdID0ga2FzYW5fc2F2ZV9zdGFjayhHRlBfTk9XQUlUKTsNCj4gPiAgfQ0K PiA+ICsNCj4gPiArdm9pZCBrYXNhbl9zZXRfZnJlZV9pbmZvKHN0cnVjdCBrbWVtX2NhY2hlICpj YWNoZSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKm9iamVjdCwg dTggdGFnKQ0KPiA+ICt7DQo+ID4gKyAgICAgICBzdHJ1Y3Qga2FzYW5fZnJlZV9tZXRhICpmcmVl X21ldGE7DQo+ID4gKw0KPiA+ICsgICAgICAgZnJlZV9tZXRhID0gZ2V0X2ZyZWVfaW5mbyhjYWNo ZSwgb2JqZWN0KTsNCj4gPiArICAgICAgIGthc2FuX3NldF90cmFjaygmZnJlZV9tZXRhLT5mcmVl X3RyYWNrLCBHRlBfTk9XQUlUKTsNCj4gPiArfQ0KPiA+ICsNCj4gPiArc3RydWN0IGthc2FuX3Ry YWNrICprYXNhbl9nZXRfZnJlZV90cmFjayhzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUsDQo+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpvYmplY3QsIHU4IHRhZykNCj4g PiArew0KPiA+ICsgICAgICAgc3RydWN0IGthc2FuX2ZyZWVfbWV0YSAqZnJlZV9tZXRhOw0KPiA+ ICsNCj4gPiArICAgICAgIGZyZWVfbWV0YSA9IGdldF9mcmVlX2luZm8oY2FjaGUsIG9iamVjdCk7 DQo+ID4gKyAgICAgICByZXR1cm4gJmZyZWVfbWV0YS0+ZnJlZV90cmFjazsNCj4gPiArfQ0KPiA+ IGRpZmYgLS1naXQgYS9tbS9rYXNhbi9rYXNhbi5oIGIvbW0va2FzYW4va2FzYW4uaA0KPiA+IGlu ZGV4IDg3MGM1ZGQwNzc1Ni4uODdlZTM2MjZiOGIwIDEwMDY0NA0KPiA+IC0tLSBhL21tL2thc2Fu L2thc2FuLmgNCj4gPiArKysgYi9tbS9rYXNhbi9rYXNhbi5oDQo+ID4gQEAgLTEyNyw2ICsxMjcs OSBAQCBzdHJ1Y3Qga2FzYW5fZnJlZV9tZXRhIHsNCj4gPiAgICAgICAgICAqIE90aGVyd2lzZSBp dCBtaWdodCBiZSB1c2VkIGZvciB0aGUgYWxsb2NhdG9yIGZyZWVsaXN0Lg0KPiA+ICAgICAgICAg ICovDQo+ID4gICAgICAgICBzdHJ1Y3QgcWxpc3Rfbm9kZSBxdWFyYW50aW5lX2xpbms7DQo+ID4g KyNpZmRlZiBDT05GSUdfS0FTQU5fR0VORVJJQw0KPiA+ICsgICAgICAgc3RydWN0IGthc2FuX3Ry YWNrIGZyZWVfdHJhY2s7DQo+ID4gKyNlbmRpZg0KPiA+ICB9Ow0KPiA+DQo+ID4gIHN0cnVjdCBr YXNhbl9hbGxvY19tZXRhICpnZXRfYWxsb2NfaW5mbyhzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUs DQo+ID4gQEAgLTE2OCw2ICsxNzEsMTAgQEAgdm9pZCBrYXNhbl9yZXBvcnRfaW52YWxpZF9mcmVl KHZvaWQgKm9iamVjdCwgdW5zaWduZWQgbG9uZyBpcCk7DQo+ID4gIHN0cnVjdCBwYWdlICprYXNh bl9hZGRyX3RvX3BhZ2UoY29uc3Qgdm9pZCAqYWRkcik7DQo+ID4NCj4gPiAgZGVwb3Rfc3RhY2tf aGFuZGxlX3Qga2FzYW5fc2F2ZV9zdGFjayhnZnBfdCBmbGFncyk7DQo+ID4gK3ZvaWQga2FzYW5f c2V0X3RyYWNrKHN0cnVjdCBrYXNhbl90cmFjayAqdHJhY2ssIGdmcF90IGZsYWdzKTsNCj4gPiAr dm9pZCBrYXNhbl9zZXRfZnJlZV9pbmZvKHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZSwgdm9pZCAq b2JqZWN0LCB1OCB0YWcpOw0KPiA+ICtzdHJ1Y3Qga2FzYW5fdHJhY2sgKmthc2FuX2dldF9mcmVl X3RyYWNrKHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZSwNCj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHZvaWQgKm9iamVjdCwgdTggdGFnKTsNCj4gPg0KPiA+ICAjaWYgZGVmaW5l ZChDT05GSUdfS0FTQU5fR0VORVJJQykgJiYgXA0KPiA+ICAgICAgICAgKGRlZmluZWQoQ09ORklH X1NMQUIpIHx8IGRlZmluZWQoQ09ORklHX1NMVUIpKQ0KPiA+IGRpZmYgLS1naXQgYS9tbS9rYXNh bi9yZXBvcnQuYyBiL21tL2thc2FuL3JlcG9ydC5jDQo+ID4gaW5kZXggNWVlNjZjZjdlMjdjLi43 ZTlmOWY2ZDVlODUgMTAwNjQ0DQo+ID4gLS0tIGEvbW0va2FzYW4vcmVwb3J0LmMNCj4gPiArKysg Yi9tbS9rYXNhbi9yZXBvcnQuYw0KPiA+IEBAIC0xNTksMjYgKzE1OSw2IEBAIHN0YXRpYyB2b2lk IGRlc2NyaWJlX29iamVjdF9hZGRyKHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZSwgdm9pZCAqb2Jq ZWN0LA0KPiA+ICAgICAgICAgICAgICAgICAodm9pZCAqKShvYmplY3RfYWRkciArIGNhY2hlLT5v YmplY3Rfc2l6ZSkpOw0KPiA+ICB9DQo+ID4NCj4gPiAtc3RhdGljIHN0cnVjdCBrYXNhbl90cmFj ayAqa2FzYW5fZ2V0X2ZyZWVfdHJhY2soc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLA0KPiA+IC0g ICAgICAgICAgICAgICB2b2lkICpvYmplY3QsIHU4IHRhZykNCj4gPiAtew0KPiA+IC0gICAgICAg c3RydWN0IGthc2FuX2FsbG9jX21ldGEgKmFsbG9jX21ldGE7DQo+ID4gLSAgICAgICBpbnQgaSA9 IDA7DQo+ID4gLQ0KPiA+IC0gICAgICAgYWxsb2NfbWV0YSA9IGdldF9hbGxvY19pbmZvKGNhY2hl LCBvYmplY3QpOw0KPiA+IC0NCj4gPiAtI2lmZGVmIENPTkZJR19LQVNBTl9TV19UQUdTX0lERU5U SUZZDQo+ID4gLSAgICAgICBmb3IgKGkgPSAwOyBpIDwgS0FTQU5fTlJfRlJFRV9TVEFDS1M7IGkr Kykgew0KPiA+IC0gICAgICAgICAgICAgICBpZiAoYWxsb2NfbWV0YS0+ZnJlZV9wb2ludGVyX3Rh Z1tpXSA9PSB0YWcpDQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQo+ID4gLSAg ICAgICB9DQo+ID4gLSAgICAgICBpZiAoaSA9PSBLQVNBTl9OUl9GUkVFX1NUQUNLUykNCj4gPiAt ICAgICAgICAgICAgICAgaSA9IGFsbG9jX21ldGEtPmZyZWVfdHJhY2tfaWR4Ow0KPiA+IC0jZW5k aWYNCj4gPiAtDQo+ID4gLSAgICAgICByZXR1cm4gJmFsbG9jX21ldGEtPmZyZWVfdHJhY2tbaV07 DQo+ID4gLX0NCj4gPiAtDQo+ID4gICNpZmRlZiBDT05GSUdfS0FTQU5fR0VORVJJQw0KPiA+ICBz dGF0aWMgdm9pZCBwcmludF9zdGFjayhkZXBvdF9zdGFja19oYW5kbGVfdCBzdGFjaykNCj4gPiAg ew0KPiA+IGRpZmYgLS1naXQgYS9tbS9rYXNhbi90YWdzLmMgYi9tbS9rYXNhbi90YWdzLmMNCj4g PiBpbmRleCAyNWI3NzM0ZTcwMTMuLjIwMWRlZTVkNmFlMCAxMDA2NDQNCj4gPiAtLS0gYS9tbS9r YXNhbi90YWdzLmMNCj4gPiArKysgYi9tbS9rYXNhbi90YWdzLmMNCj4gPiBAQCAtMTYyLDMgKzE2 Miw0MCBAQCB2b2lkIF9faHdhc2FuX3RhZ19tZW1vcnkodW5zaWduZWQgbG9uZyBhZGRyLCB1OCB0 YWcsIHVuc2lnbmVkIGxvbmcgc2l6ZSkNCj4gPiAgICAgICAgIGthc2FuX3BvaXNvbl9zaGFkb3co KHZvaWQgKilhZGRyLCBzaXplLCB0YWcpOw0KPiA+ICB9DQo+ID4gIEVYUE9SVF9TWU1CT0woX19o d2FzYW5fdGFnX21lbW9yeSk7DQo+ID4gKw0KPiA+ICt2b2lkIGthc2FuX3NldF9mcmVlX2luZm8o c3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdm9pZCAqb2JqZWN0LCB1OCB0YWcpDQo+ID4gK3sNCj4gPiArICAgICAgIHN0cnVjdCBr YXNhbl9hbGxvY19tZXRhICphbGxvY19tZXRhOw0KPiA+ICsgICAgICAgdTggaWR4ID0gMDsNCj4g PiArDQo+ID4gKyAgICAgICBhbGxvY19tZXRhID0gZ2V0X2FsbG9jX2luZm8oY2FjaGUsIG9iamVj dCk7DQo+ID4gKw0KPiA+ICsjaWZkZWYgQ09ORklHX0tBU0FOX1NXX1RBR1NfSURFTlRJRlkNCj4g PiArICAgICAgIGlkeCA9IGFsbG9jX21ldGEtPmZyZWVfdHJhY2tfaWR4Ow0KPiA+ICsgICAgICAg YWxsb2NfbWV0YS0+ZnJlZV9wb2ludGVyX3RhZ1tpZHhdID0gdGFnOw0KPiA+ICsgICAgICAgYWxs b2NfbWV0YS0+ZnJlZV90cmFja19pZHggPSAoaWR4ICsgMSkgJSBLQVNBTl9OUl9GUkVFX1NUQUNL UzsNCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICsgICAgICAga2FzYW5fc2V0X3RyYWNrKCZhbGxv Y19tZXRhLT5mcmVlX3RyYWNrW2lkeF0sIEdGUF9OT1dBSVQpOw0KPiA+ICt9DQo+ID4gKw0KPiA+ ICtzdHJ1Y3Qga2FzYW5fdHJhY2sgKmthc2FuX2dldF9mcmVlX3RyYWNrKHN0cnVjdCBrbWVtX2Nh Y2hlICpjYWNoZSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKm9i amVjdCwgdTggdGFnKQ0KPiA+ICt7DQo+ID4gKyAgICAgICBzdHJ1Y3Qga2FzYW5fYWxsb2NfbWV0 YSAqYWxsb2NfbWV0YTsNCj4gPiArICAgICAgIGludCBpID0gMDsNCj4gPiArDQo+ID4gKyAgICAg ICBhbGxvY19tZXRhID0gZ2V0X2FsbG9jX2luZm8oY2FjaGUsIG9iamVjdCk7DQo+ID4gKw0KPiA+ ICsjaWZkZWYgQ09ORklHX0tBU0FOX1NXX1RBR1NfSURFTlRJRlkNCj4gPiArICAgICAgIGZvciAo aSA9IDA7IGkgPCBLQVNBTl9OUl9GUkVFX1NUQUNLUzsgaSsrKSB7DQo+ID4gKyAgICAgICAgICAg ICAgIGlmIChhbGxvY19tZXRhLT5mcmVlX3BvaW50ZXJfdGFnW2ldID09IHRhZykNCj4gPiArICAg ICAgICAgICAgICAgICAgICAgICBicmVhazsNCj4gPiArICAgICAgIH0NCj4gPiArICAgICAgIGlm IChpID09IEtBU0FOX05SX0ZSRUVfU1RBQ0tTKQ0KPiA+ICsgICAgICAgICAgICAgICBpID0gYWxs b2NfbWV0YS0+ZnJlZV90cmFja19pZHg7DQo+ID4gKyNlbmRpZg0KPiA+ICsNCj4gPiArICAgICAg IHJldHVybiAmYWxsb2NfbWV0YS0+ZnJlZV90cmFja1tpXTsNCj4gPiArfQ0KPiA+IC0tDQo+ID4g Mi4xOC4wDQoNCg==