Received: by 2002:a25:23cc:0:0:0:0:0 with SMTP id j195csp1752692ybj; Wed, 6 May 2020 04:47:38 -0700 (PDT) X-Google-Smtp-Source: APiQypJN2XSwwlbCfj1dKI7PJXTDDKZ156GoTmTtT5t+IhrEWrzKXMQDz3TqcYvll8FVr6SZk1D7 X-Received: by 2002:a17:907:40f2:: with SMTP id no2mr7077126ejb.41.1588765658538; Wed, 06 May 2020 04:47:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588765658; cv=none; d=google.com; s=arc-20160816; b=n/YCyZiAZr5/tKwXeWXdDjhO+Spxcrh+iRJfJSS1FzkG4GR8PbtVmjATFVd9csqlPH VAVy/mMzVH/2j8MnobW5WIfrtAMcgKA2TFDDOz0TcLYFS6CWj5LRSjlSdu8TAfPbz9Fv Ch+jGHuZaZkKFI3KWgvSgeP1By5VD8W6zd/1y/o6/3rkBTP74UJMpR3KFXM6oBy7lGc/ +3TAp7sgQQRSfLHQ8qSi5t8foKtWDgpShoXUJvxDWW0XHJ8mXM//o4zSgV7XfDaL2dzm CK8q8JNqd5xsvWNlGnhU0IdVunKaPpUZJICfNMIS/1QVkL9SSAt80d/FHe0WknQOh/dT Rjkw== 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=HC1C5JU9o2lOZOLuLLz92jALWgAK6MhyRnRurn0tSl0=; b=NvCLNvxB7liUq7b/BIQGs6DlEArBh3DNc247E1GNVzmw4Rwr4X45V1UjS/9OSWoUzu OyS9H61W4aJKvXJo4gloFgUBcjocgi2upCF2otQV5tvNwYuW5tPnr8dPqpQ0suHelxot mJ/GnxLQD9nsmMkBhPzXeTVr6wxbB//jnE2WGFiyBoaH1nodk+7cjxHm6STHmPRmAbAp ZT8QPb3SSc4zlA69oAt8grAgGKBK7xZj2qSlZJQVeDpAtYf2udPFFu3Z2LHgbg52pDdi bJx+78EDnr31taX9nPWyyoynFWJWDorJRhzSJplk60xcfy0j85N5OvHVowBJp8n7zQlQ MQ7A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=Row5HprT; 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 s27si982053ejd.254.2020.05.06.04.47.15; Wed, 06 May 2020 04:47:38 -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=Row5HprT; 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 S1727844AbgEFLp1 (ORCPT + 99 others); Wed, 6 May 2020 07:45:27 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:39515 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726516AbgEFLp0 (ORCPT ); Wed, 6 May 2020 07:45:26 -0400 X-UUID: 55a93a0206564a3483cce296163898a3-20200506 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=HC1C5JU9o2lOZOLuLLz92jALWgAK6MhyRnRurn0tSl0=; b=Row5HprT9YghcGCdts38avYJgPIbn8sXz68uRUMxGJPzkqwY2rfFuuIyiYRJ3+Nec233mgnyfYLbn2M2veZKJgE2sHi81C1ZzNWEHat6U2Fzlo8SBv54EiBMzyXPqWaSRHGcX+Yl+KLRIn49eXjy2WwqbOY9UongwkD+qrS5mEM=; X-UUID: 55a93a0206564a3483cce296163898a3-20200506 Received: from mtkcas06.mediatek.inc [(172.21.101.30)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1814852193; Wed, 06 May 2020 19:45:21 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs01n2.mediatek.inc (172.21.101.79) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 6 May 2020 19:45:17 +0800 Received: from [172.21.84.99] (172.21.84.99) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Wed, 6 May 2020 19:45:17 +0800 Message-ID: <1588765520.23664.22.camel@mtksdccf07> Subject: Re: [PATCH 1/3] rcu/kasan: record and print call_rcu() call stack From: Walter Wu To: Dmitry Vyukov CC: Andrey Ryabinin , Alexander Potapenko , Matthias Brugger , "Paul E . McKenney" , Josh Triplett , Mathieu Desnoyers , Lai Jiangshan , Joel Fernandes , "Andrew Morton" , kasan-dev , Linux-MM , LKML , "Linux ARM" , wsd_upstream , Date: Wed, 6 May 2020 19:45:20 +0800 In-Reply-To: References: <20200506052046.14451-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-TM-SNTS-SMTP: 394EFE9EF3BC220BD62FBD36B53299AE0F17607FF8BE54C4C50C762437373FCB2000:8 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 T24gV2VkLCAyMDIwLTA1LTA2IGF0IDExOjQ2ICswMjAwLCBEbWl0cnkgVnl1a292IHdyb3RlOg0K PiBPbiBXZWQsIE1heSA2LCAyMDIwIGF0IDc6MjEgQU0gV2FsdGVyIFd1IDx3YWx0ZXItemgud3VA bWVkaWF0ZWsuY29tPiB3cm90ZToNCj4gPg0KPiA+IFdoZW4gY2FsbF9yY3UoKSBpcyBjYWxsZWQs IHdlIHN0b3JlIHRoZSBjYWxsX3JjdSgpIGNhbGwgc3RhY2sgaW50bw0KPiA+IHNsdWIgYWxsb2Mg bWV0YS1kYXRhLCBzbyB0aGF0IEtBU0FOIHJlcG9ydCBwcmludHMgY2FsbF9yY3UoKSBpbmZvcm1h dGlvbi4NCj4gPg0KPiA+IFdlIGFkZCBuZXcgS0FTQU5fUkNVX1NUQUNLX1JFQ09SRCBjb25maWd1 cmF0aW9uIG9wdGlvbi4gSXQgd2lsbCByZWNvcmQNCj4gPiBmaXJzdCBhbmQgbGFzdCBjYWxsX3Jj dSgpIGNhbGwgc3RhY2sgYW5kIEtBU0FOIHJlcG9ydCB3aWxsIHByaW50IHR3bw0KPiA+IGNhbGxf cmN1KCkgY2FsbCBzdGFjay4NCj4gPg0KPiA+IFRoaXMgb3B0aW9uIGRvZXNuJ3QgaW5jcmVhc2Ug dGhlIGNvc3Qgb2YgbWVtb3J5IGNvbnN1bXB0aW9uLiBCZWNhdXNlDQo+ID4gd2UgZG9uJ3QgZW5s YXJnZSBzdHJ1Y3Qga2FzYW5fYWxsb2NfbWV0YSBzaXplLg0KPiA+IC0gYWRkIHR3byBjYWxsX3Jj dSgpIGNhbGwgc3RhY2sgaW50byBrYXNhbl9hbGxvY19tZXRhLCBzaXplIGlzIDggYnl0ZXMuDQo+ ID4gLSByZW1vdmUgZnJlZSB0cmFjayBmcm9tIGthc2FuX2FsbG9jX21ldGEsIHNpemUgaXMgOCBi eXRlcy4NCj4gPg0KPiA+IFsxXWh0dHBzOi8vYnVnemlsbGEua2VybmVsLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9MTk4NDM3DQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBXYWx0ZXIgV3UgPHdhbHRlci16 aC53dUBtZWRpYXRlay5jb20+DQo+ID4gU3VnZ2VzdGVkLWJ5OiBEbWl0cnkgVnl1a292IDxkdnl1 a292QGdvb2dsZS5jb20+DQo+ID4gQ2M6IEFuZHJleSBSeWFiaW5pbiA8YXJ5YWJpbmluQHZpcnR1 b3p6by5jb20+DQo+ID4gQ2M6IERtaXRyeSBWeXVrb3YgPGR2eXVrb3ZAZ29vZ2xlLmNvbT4NCj4g PiBDYzogQWxleGFuZGVyIFBvdGFwZW5rbyA8Z2xpZGVyQGdvb2dsZS5jb20+DQo+ID4gQ2M6IEFu ZHJldyBNb3J0b24gPGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc+DQo+ID4gQ2M6IFBhdWwgRS4g TWNLZW5uZXkgPHBhdWxtY2tAa2VybmVsLm9yZz4NCj4gPiBDYzogSm9zaCBUcmlwbGV0dCA8am9z aEBqb3NodHJpcGxldHQub3JnPg0KPiA+IENjOiBNYXRoaWV1IERlc25veWVycyA8bWF0aGlldS5k ZXNub3llcnNAZWZmaWNpb3MuY29tPg0KPiA+IENjOiBMYWkgSmlhbmdzaGFuIDxqaWFuZ3NoYW5s YWlAZ21haWwuY29tPg0KPiA+IENjOiBKb2VsIEZlcm5hbmRlcyA8am9lbEBqb2VsZmVybmFuZGVz Lm9yZz4NCj4gPiAtLS0NCj4gPiAgaW5jbHVkZS9saW51eC9rYXNhbi5oIHwgIDcgKysrKysrKw0K PiA+ICBrZXJuZWwvcmN1L3RyZWUuYyAgICAgfCAgNCArKysrDQo+ID4gIGxpYi9LY29uZmlnLmth c2FuICAgICB8IDExICsrKysrKysrKysrDQo+ID4gIG1tL2thc2FuL2NvbW1vbi5jICAgICB8IDIz ICsrKysrKysrKysrKysrKysrKysrKysrDQo+ID4gIG1tL2thc2FuL2thc2FuLmggICAgICB8IDEy ICsrKysrKysrKysrKw0KPiA+ICBtbS9rYXNhbi9yZXBvcnQuYyAgICAgfCAzMyArKysrKysrKysr KysrKysrKysrKysrKysrKystLS0tLS0NCj4gPiAgNiBmaWxlcyBjaGFuZ2VkLCA4NCBpbnNlcnRp b25zKCspLCA2IGRlbGV0aW9ucygtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGlu dXgva2FzYW4uaCBiL2luY2x1ZGUvbGludXgva2FzYW4uaA0KPiA+IGluZGV4IDMxMzE0Y2E3YzYz NS4uNWVlZWNlNjg5M2NkIDEwMDY0NA0KPiA+IC0tLSBhL2luY2x1ZGUvbGludXgva2FzYW4uaA0K PiA+ICsrKyBiL2luY2x1ZGUvbGludXgva2FzYW4uaA0KPiA+IEBAIC05Niw2ICs5NiwxMiBAQCBz aXplX3Qga2FzYW5fbWV0YWRhdGFfc2l6ZShzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUpOw0KPiA+ ICBib29sIGthc2FuX3NhdmVfZW5hYmxlX211bHRpX3Nob3Qodm9pZCk7DQo+ID4gIHZvaWQga2Fz YW5fcmVzdG9yZV9tdWx0aV9zaG90KGJvb2wgZW5hYmxlZCk7DQo+ID4NCj4gPiArI2lmZGVmIENP TkZJR19LQVNBTl9SQ1VfU1RBQ0tfUkVDT1JEDQo+ID4gK3ZvaWQga2FzYW5fcmVjb3JkX2NhbGxy Y3Uodm9pZCAqcHRyKTsNCj4gDQo+IFRoZSBpc3N1ZSBhbHNvIG1lbnRpb25zIHdvcmtxdWV1ZSBh bmQgdGltZXIgc3RhY2tzLg0KPiBIYXZlIHlvdSBjb25zaWRlcmVkIHN1cHBvcnRpbmcgdGhlbSBh cyB3ZWxsPyBXaGF0IHdhcyB5b3VyIG1vdGl2YXRpb24NCj4gZm9yIGRvaW5nIG9ubHkgcmN1Pw0K PiANCkkgd2lsbCB0cnkgdG8gaW1wbGVtZW50IHRoZW0gd2hlbiBJIGhhdmUgZnJlZSB0aW1lLCBt YXliZSB3ZSBjYW4gZG8gaXQNCnN0ZXAgYnkgc3RlcCwgZmluaXNoIHRoZSBwcmludGluZyBjYWxs X3JjdSgpIGZpcnN0Lg0KSSByZW1lbWJlciB0aGF0IEkgc2F3IHRoZSBmb2xsb3dpbmcgbGluaywg cmVjb3JkaW5nIGNhbGxfcmN1IHNlZW1zIGxpa2UNCmJlIG5lZWRlZC4NCg0KaHR0cHM6Ly9ncm91 cHMuZ29vZ2xlLmNvbS9mb3J1bS8jIXNlYXJjaGluL2thc2FuLWRldi9iZXR0ZXIkMjBzdGFjaw0K JDIwdHJhY2VzJDIwZm9yJDIwcmN1JTdDc29ydDpkYXRlL2thc2FuLWRldi9LUXNqVF84OGhERS83 ck5VWnByUkJnQUoNCg0KDQo+IExvb2tpbmcgYXQgdGhlIGZpcnN0IHJlcG9ydCBmb3IgIndvcmtx dWV1ZSB1c2UtYWZ0ZXItZnJlZSI6DQo+IGh0dHBzOi8vc3l6a2FsbGVyLmFwcHNwb3QuY29tL2J1 Zz9leHRpZD05Y2JhMWU0NzhmOTFhYWQzOTg3Ng0KPiBUaGlzIGlzIGV4YWN0bHkgdGhlIHNhbWUg c2l0dWF0aW9uIGFzIGZvciBjYWxsX3JjdSwganVzdCBhIHdvcmtxdWV1ZQ0KPiBpcyB1c2VkIHRv IGludm9rZSBhIGNhbGxiYWNrIHRoYXQgZnJlZXMgdGhlIG9iamVjdC4NCj4gDQo+IElmIHlvdSBk b24ndCB3YW50IHRvIGRvIGFsbCBhdCB0aGUgc2FtZSB0aW1lLCBJIHdvdWxkIGF0IGxlYXN0DQo+ IG5hbWUvYnJhbmNoIGV2ZXJ5dGhpbmcgaW5zaWRlIG9mIEtBU0FOIG1vcmUgZ2VuZXJhbGx5IChJ IHRoaW5rIGluIHRoZQ0KPiBpc3N1ZSBJIGNhbGxlZCBpdCAiYXV4IiAoYXV4aWxpYXJ5KSwgb3Ig bWF5YmUgc29tZXRoaW5nIGxpa2UNCj4gImFkZGl0aW9uYWwiKS4gQnV0IHRoZW4gY2FsbCB0aGlz IGthc2FuX3JlY29yZF9hdXhfc3RhY2soKSBvbmx5IGZyb20NCj4gcmN1IGZvciBub3cuIEJ1dCB0 aGVuIGxhdGVyIHdlIGNhbiBzZXBhcmF0ZWx5IGRlY2lkZSBhbmQgZXh0ZW5kIHRvDQo+IG90aGVy IGNhbGxlcnMuDQo+IEl0IGp1c3QgZmVlbHMgd3JvbmcgdG8gaGF2ZSBLQVNBTiBvdmVyLXNwZWNp YWxpemVkIGZvciByY3Ugb25seSBpbiB0aGlzIHdheS4NCj4gQW5kIEkgdGhpbmsgaWYgdGhlIFVB RiBpcyByZWFsbHkgY2F1c2VkIGJ5IGNhbGxfcmN1IGNhbGxiYWNrLCB0aGVuIGl0DQo+IHNpbGwg d2lsbCBiZSByZWNvcmRlZCBhcyBsYXN0IHN0YWNrIG1vc3Qgb2YgdGhlIHRpbWUgYmVjYXVzZSBy Y3UNCj4gY2FsbGJhY2tzIGFyZSBpbnZva2VkIHJlbGF0aXZlbHkgZmFzdCBhbmQgdGhlcmUgc2hv dWxkIG5vdCBiZSBtdWNoDQo+IGVsc2UgaGFwcGVuaW5nIHdpdGggdGhlIG9iamVjdCBzaW5jZSBp dCdzIG5lYXIgZW5kIG9mIGxpZmUgYWxyZWFkeS4NCj4gDQpZZXMsIEkgYWdyZWUgd2l0aCB5b3Uu IEkgd2lsbCBzZW5kIHYyIHBhdGNoc2V0IGFzIHlvdSBzYXlpbmcuDQoNCj4gDQo+IA0KPiANCj4g PiArI2Vsc2UNCj4gPiArc3RhdGljIGlubGluZSB2b2lkIGthc2FuX3JlY29yZF9jYWxscmN1KHZv aWQgKnB0cikge30NCj4gPiArI2VuZGlmDQo+ID4gKw0KPiA+ICAjZWxzZSAvKiBDT05GSUdfS0FT QU4gKi8NCj4gPg0KPiA+ICBzdGF0aWMgaW5saW5lIHZvaWQga2FzYW5fdW5wb2lzb25fc2hhZG93 KGNvbnN0IHZvaWQgKmFkZHJlc3MsIHNpemVfdCBzaXplKSB7fQ0KPiA+IEBAIC0xNjUsNiArMTcx LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGthc2FuX3JlbW92ZV96ZXJvX3NoYWRvdyh2b2lkICpz dGFydCwNCj4gPg0KPiA+ICBzdGF0aWMgaW5saW5lIHZvaWQga2FzYW5fdW5wb2lzb25fc2xhYihj b25zdCB2b2lkICpwdHIpIHsgfQ0KPiA+ICBzdGF0aWMgaW5saW5lIHNpemVfdCBrYXNhbl9tZXRh ZGF0YV9zaXplKHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZSkgeyByZXR1cm4gMDsgfQ0KPiA+ICtz dGF0aWMgaW5saW5lIHZvaWQga2FzYW5fcmVjb3JkX2NhbGxyY3Uodm9pZCAqcHRyKSB7fQ0KPiA+ DQo+ID4gICNlbmRpZiAvKiBDT05GSUdfS0FTQU4gKi8NCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9r ZXJuZWwvcmN1L3RyZWUuYyBiL2tlcm5lbC9yY3UvdHJlZS5jDQo+ID4gaW5kZXggMDY1NDhlMmVi YjcyLi4xNDVjNzliZWNmN2IgMTAwNjQ0DQo+ID4gLS0tIGEva2VybmVsL3JjdS90cmVlLmMNCj4g PiArKysgYi9rZXJuZWwvcmN1L3RyZWUuYw0KPiA+IEBAIC01Nyw2ICs1Nyw3IEBADQo+ID4gICNp bmNsdWRlIDxsaW51eC9zbGFiLmg+DQo+ID4gICNpbmNsdWRlIDxsaW51eC9zY2hlZC9pc29sYXRp b24uaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L3NjaGVkL2Nsb2NrLmg+DQo+ID4gKyNpbmNsdWRl IDxsaW51eC9rYXNhbi5oPg0KPiA+ICAjaW5jbHVkZSAiLi4vdGltZS90aWNrLWludGVybmFsLmgi DQo+ID4NCj4gPiAgI2luY2x1ZGUgInRyZWUuaCINCj4gPiBAQCAtMjY5NCw2ICsyNjk1LDkgQEAg X19jYWxsX3JjdShzdHJ1Y3QgcmN1X2hlYWQgKmhlYWQsIHJjdV9jYWxsYmFja190IGZ1bmMpDQo+ ID4gICAgICAgICAgICAgICAgIHRyYWNlX3JjdV9jYWxsYmFjayhyY3Vfc3RhdGUubmFtZSwgaGVh ZCwNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJjdV9zZWdjYmxpc3Rf bl9jYnMoJnJkcC0+Y2JsaXN0KSk7DQo+ID4NCj4gPiArICAgICAgIGlmIChJU19FTkFCTEVEKENP TkZJR19LQVNBTl9SQ1VfU1RBQ0tfUkVDT1JEKSkNCj4gDQo+IFRoZSBpZiBpcyBub3QgbmVjZXNz YXJ5LCB0aGlzIGZ1bmN0aW9uIGlzIG5vLW9wIHdoZW4gbm90IGVuYWJsZWQuDQo+IA0KPiA+ICsg ICAgICAgICAgICAgICBrYXNhbl9yZWNvcmRfY2FsbHJjdShoZWFkKTsNCj4gPiArDQo+ID4gICAg ICAgICAvKiBHbyBoYW5kbGUgYW55IFJDVSBjb3JlIHByb2Nlc3NpbmcgcmVxdWlyZWQuICovDQo+ ID4gICAgICAgICBpZiAoSVNfRU5BQkxFRChDT05GSUdfUkNVX05PQ0JfQ1BVKSAmJg0KPiA+ICAg ICAgICAgICAgIHVubGlrZWx5KHJjdV9zZWdjYmxpc3RfaXNfb2ZmbG9hZGVkKCZyZHAtPmNibGlz dCkpKSB7DQo+ID4gZGlmZiAtLWdpdCBhL2xpYi9LY29uZmlnLmthc2FuIGIvbGliL0tjb25maWcu a2FzYW4NCj4gPiBpbmRleCA4MWY1NDY0ZWE5ZTEuLjAyMjkzNDA0OWNjMiAxMDA2NDQNCj4gPiAt LS0gYS9saWIvS2NvbmZpZy5rYXNhbg0KPiA+ICsrKyBiL2xpYi9LY29uZmlnLmthc2FuDQo+ID4g QEAgLTE1OCw2ICsxNTgsMTcgQEAgY29uZmlnIEtBU0FOX1ZNQUxMT0MNCj4gPiAgICAgICAgICAg Zm9yIEtBU0FOIHRvIGRldGVjdCBtb3JlIHNvcnRzIG9mIGVycm9ycyAoYW5kIHRvIHN1cHBvcnQg dm1hcHBlZA0KPiA+ICAgICAgICAgICBzdGFja3MpLCBidXQgYXQgdGhlIGNvc3Qgb2YgaGlnaGVy IG1lbW9yeSB1c2FnZS4NCj4gPg0KPiA+ICtjb25maWcgS0FTQU5fUkNVX1NUQUNLX1JFQ09SRA0K PiA+ICsgICAgICAgYm9vbCAiUmVjb3JkIGFuZCBwcmludCBjYWxsX3JjdSgpIGNhbGwgc3RhY2si DQo+ID4gKyAgICAgICBkZXBlbmRzIG9uIEtBU0FOX0dFTkVSSUMNCj4gPiArICAgICAgIGhlbHAN Cj4gPiArICAgICAgICAgQnkgZGVmYXVsdCwgdGhlIEtBU0FOIHJlcG9ydCBkb2Vzbid0IHByaW50 IGNhbGxfcmN1KCkgY2FsbCBzdGFjay4NCj4gPiArICAgICAgICAgSXQgaXMgdmVyeSBkaWZmaWN1 bHQgdG8gYW5hbHl6ZSBtZW1vcnkgaXNzdWVzKGUuZy4sIHVzZS1hZnRlci1mcmVlKS4NCj4gPiAr DQo+ID4gKyAgICAgICAgIEVuYWJsaW5nIHRoaXMgb3B0aW9uIHdpbGwgcHJpbnQgZmlyc3QgYW5k IGxhc3QgY2FsbF9yY3UoKSBjYWxsIHN0YWNrLg0KPiA+ICsgICAgICAgICBJdCBkb2Vzbid0IGVu bGFyZ2Ugc2x1YiBhbGxvYyBtZXRhLWRhdGEgc2l6ZSwgc28gaXQgZG9lc24ndCBpbmNyZWFzZQ0K PiA+ICsgICAgICAgICB0aGUgY29zdCBvZiBtZW1vcnkgY29uc3VtcHRpb24uDQo+ID4gKw0KPiA+ ICBjb25maWcgVEVTVF9LQVNBTg0KPiA+ICAgICAgICAgdHJpc3RhdGUgIk1vZHVsZSBmb3IgdGVz dGluZyBLQVNBTiBmb3IgYnVnIGRldGVjdGlvbiINCj4gPiAgICAgICAgIGRlcGVuZHMgb24gbSAm JiBLQVNBTg0KPiA+IGRpZmYgLS1naXQgYS9tbS9rYXNhbi9jb21tb24uYyBiL21tL2thc2FuL2Nv bW1vbi5jDQo+ID4gaW5kZXggMjkwNjM1OGU0MmYwLi4zMmQ0MjJiZGYxMjcgMTAwNjQ0DQo+ID4g LS0tIGEvbW0va2FzYW4vY29tbW9uLmMNCj4gPiArKysgYi9tbS9rYXNhbi9jb21tb24uYw0KPiA+ IEBAIC0yOTksNiArMjk5LDI5IEBAIHN0cnVjdCBrYXNhbl9mcmVlX21ldGEgKmdldF9mcmVlX2lu Zm8oc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLA0KPiA+ICAgICAgICAgcmV0dXJuICh2b2lkICop b2JqZWN0ICsgY2FjaGUtPmthc2FuX2luZm8uZnJlZV9tZXRhX29mZnNldDsNCj4gPiAgfQ0KPiA+ DQo+ID4gKyNpZmRlZiBDT05GSUdfS0FTQU5fUkNVX1NUQUNLX1JFQ09SRA0KPiA+ICt2b2lkIGth c2FuX3JlY29yZF9jYWxscmN1KHZvaWQgKmFkZHIpDQo+ID4gK3sNCj4gPiArICAgICAgIHN0cnVj dCBwYWdlICpwYWdlID0ga2FzYW5fYWRkcl90b19wYWdlKGFkZHIpOw0KPiA+ICsgICAgICAgc3Ry dWN0IGttZW1fY2FjaGUgKmNhY2hlOw0KPiA+ICsgICAgICAgc3RydWN0IGthc2FuX2FsbG9jX21l dGEgKmFsbG9jX2luZm87DQo+ID4gKyAgICAgICB2b2lkICpvYmplY3Q7DQo+ID4gKw0KPiA+ICsg ICAgICAgaWYgKCEocGFnZSAmJiBQYWdlU2xhYihwYWdlKSkpDQo+ID4gKyAgICAgICAgICAgICAg IHJldHVybjsNCj4gPiArDQo+ID4gKyAgICAgICBjYWNoZSA9IHBhZ2UtPnNsYWJfY2FjaGU7DQo+ ID4gKyAgICAgICBvYmplY3QgPSBuZWFyZXN0X29iaihjYWNoZSwgcGFnZSwgYWRkcik7DQo+ID4g KyAgICAgICBhbGxvY19pbmZvID0gZ2V0X2FsbG9jX2luZm8oY2FjaGUsIG9iamVjdCk7DQo+ID4g Kw0KPiA+ICsgICAgICAgaWYgKCFhbGxvY19pbmZvLT5yY3VfZnJlZV9zdGFja1swXSkNCj4gPiAr ICAgICAgICAgICAgICAgLyogcmVjb3JkIGZpcnN0IGNhbGxfcmN1KCkgY2FsbCBzdGFjayAqLw0K PiA+ICsgICAgICAgICAgICAgICBhbGxvY19pbmZvLT5yY3VfZnJlZV9zdGFja1swXSA9IHNhdmVf c3RhY2soR0ZQX05PV0FJVCk7DQo+ID4gKyAgICAgICBlbHNlDQo+ID4gKyAgICAgICAgICAgICAg IC8qIHJlY29yZCBsYXN0IGNhbGxfcmN1KCkgY2FsbCBzdGFjayAqLw0KPiA+ICsgICAgICAgICAg ICAgICBhbGxvY19pbmZvLT5yY3VfZnJlZV9zdGFja1sxXSA9IHNhdmVfc3RhY2soR0ZQX05PV0FJ VCk7DQo+ID4gK30NCj4gPiArI2VuZGlmDQo+ID4NCj4gPiAgc3RhdGljIHZvaWQga2FzYW5fc2V0 X2ZyZWVfaW5mbyhzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUsDQo+ID4gICAgICAgICAgICAgICAg IHZvaWQgKm9iamVjdCwgdTggdGFnKQ0KPiA+IGRpZmYgLS1naXQgYS9tbS9rYXNhbi9rYXNhbi5o IGIvbW0va2FzYW4va2FzYW4uaA0KPiA+IGluZGV4IGU4ZjM3MTk5ZDg4NS4uYWRjMTA1YjljZDA3 IDEwMDY0NA0KPiA+IC0tLSBhL21tL2thc2FuL2thc2FuLmgNCj4gPiArKysgYi9tbS9rYXNhbi9r YXNhbi5oDQo+ID4gQEAgLTk2LDE1ICs5NiwyNyBAQCBzdHJ1Y3Qga2FzYW5fdHJhY2sgew0KPiA+ ICAgICAgICAgZGVwb3Rfc3RhY2tfaGFuZGxlX3Qgc3RhY2s7DQo+ID4gIH07DQo+ID4NCj4gPiAr I2lmZGVmIENPTkZJR19LQVNBTl9SQ1VfU1RBQ0tfUkVDT1JEDQo+ID4gKyNkZWZpbmUgQllURVNf UEVSX1dPUkQgNA0KPiA+ICsjZGVmaW5lIEtBU0FOX05SX1JDVV9GUkVFX1NUQUNLUyAyDQo+ID4g KyNlbHNlIC8qIENPTkZJR19LQVNBTl9SQ1VfU1RBQ0tfUkVDT1JEICovDQo+ID4gICNpZmRlZiBD T05GSUdfS0FTQU5fU1dfVEFHU19JREVOVElGWQ0KPiA+ICAjZGVmaW5lIEtBU0FOX05SX0ZSRUVf U1RBQ0tTIDUNCj4gPiAgI2Vsc2UNCj4gPiAgI2RlZmluZSBLQVNBTl9OUl9GUkVFX1NUQUNLUyAx DQo+ID4gICNlbmRpZg0KPiA+ICsjZW5kaWYgLyogQ09ORklHX0tBU0FOX1JDVV9TVEFDS19SRUNP UkQgKi8NCj4gPg0KPiA+ICBzdHJ1Y3Qga2FzYW5fYWxsb2NfbWV0YSB7DQo+ID4gICAgICAgICBz dHJ1Y3Qga2FzYW5fdHJhY2sgYWxsb2NfdHJhY2s7DQo+ID4gKyNpZmRlZiBDT05GSUdfS0FTQU5f UkNVX1NUQUNLX1JFQ09SRA0KPiA+ICsgICAgICAgLyogY2FsbF9yY3UoKSBjYWxsIHN0YWNrIGlz IHN0b3JlZCBpbnRvIGthc2FuX2FsbG9jX21ldGEuDQo+ID4gKyAgICAgICAgKiBmcmVlIHN0YWNr IGlzIHN0b3JlZCBpbnRvIGZyZWVkIG9iamVjdC4NCj4gPiArICAgICAgICAqLw0KPiA+ICsgICAg ICAgZGVwb3Rfc3RhY2tfaGFuZGxlX3QgcmN1X2ZyZWVfc3RhY2tbS0FTQU5fTlJfUkNVX0ZSRUVf U1RBQ0tTXTsNCj4gPiArI2Vsc2UNCj4gPiAgICAgICAgIHN0cnVjdCBrYXNhbl90cmFjayBmcmVl X3RyYWNrW0tBU0FOX05SX0ZSRUVfU1RBQ0tTXTsNCj4gPiArI2VuZGlmDQo+ID4gICNpZmRlZiBD T05GSUdfS0FTQU5fU1dfVEFHU19JREVOVElGWQ0KPiA+ICAgICAgICAgdTggZnJlZV9wb2ludGVy X3RhZ1tLQVNBTl9OUl9GUkVFX1NUQUNLU107DQo+ID4gICAgICAgICB1OCBmcmVlX3RyYWNrX2lk eDsNCj4gPiBkaWZmIC0tZ2l0IGEvbW0va2FzYW4vcmVwb3J0LmMgYi9tbS9rYXNhbi9yZXBvcnQu Yw0KPiA+IGluZGV4IDgwZjIzYzlkYTZiMC4uN2FhY2NjNzBiNjViIDEwMDY0NA0KPiA+IC0tLSBh L21tL2thc2FuL3JlcG9ydC5jDQo+ID4gKysrIGIvbW0va2FzYW4vcmVwb3J0LmMNCj4gPiBAQCAt MTA1LDkgKzEwNSwxMyBAQCBzdGF0aWMgdm9pZCBlbmRfcmVwb3J0KHVuc2lnbmVkIGxvbmcgKmZs YWdzKQ0KPiA+ICAgICAgICAga2FzYW5fZW5hYmxlX2N1cnJlbnQoKTsNCj4gPiAgfQ0KPiA+DQo+ ID4gLXN0YXRpYyB2b2lkIHByaW50X3RyYWNrKHN0cnVjdCBrYXNhbl90cmFjayAqdHJhY2ssIGNv bnN0IGNoYXIgKnByZWZpeCkNCj4gPiArc3RhdGljIHZvaWQgcHJpbnRfdHJhY2soc3RydWN0IGth c2FuX3RyYWNrICp0cmFjaywgY29uc3QgY2hhciAqcHJlZml4LA0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNfY2FsbHJjdSkNCj4gPiAg ew0KPiA+IC0gICAgICAgcHJfZXJyKCIlcyBieSB0YXNrICV1OlxuIiwgcHJlZml4LCB0cmFjay0+ cGlkKTsNCj4gPiArICAgICAgIGlmIChpc19jYWxscmN1KQ0KPiA+ICsgICAgICAgICAgICAgICBw cl9lcnIoIiVzOlxuIiwgcHJlZml4KTsNCj4gPiArICAgICAgIGVsc2UNCj4gPiArICAgICAgICAg ICAgICAgcHJfZXJyKCIlcyBieSB0YXNrICV1OlxuIiwgcHJlZml4LCB0cmFjay0+cGlkKTsNCj4g PiAgICAgICAgIGlmICh0cmFjay0+c3RhY2spIHsNCj4gPiAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgbG9uZyAqZW50cmllczsNCj4gPiAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG5yX2Vu dHJpZXM7DQo+ID4gQEAgLTE1OSw4ICsxNjMsMjIgQEAgc3RhdGljIHZvaWQgZGVzY3JpYmVfb2Jq ZWN0X2FkZHIoc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlLCB2b2lkICpvYmplY3QsDQo+ID4gICAg ICAgICAgICAgICAgICh2b2lkICopKG9iamVjdF9hZGRyICsgY2FjaGUtPm9iamVjdF9zaXplKSk7 DQo+ID4gIH0NCj4gPg0KPiA+ICsjaWZkZWYgQ09ORklHX0tBU0FOX1JDVV9TVEFDS19SRUNPUkQN Cj4gPiArc3RhdGljIHZvaWQga2FzYW5fcHJpbnRfcmN1X2ZyZWVfc3RhY2soc3RydWN0IGthc2Fu X2FsbG9jX21ldGEgKmFsbG9jX2luZm8pDQo+ID4gK3sNCj4gPiArICAgICAgIHN0cnVjdCBrYXNh bl90cmFjayBmcmVlX3RyYWNrOw0KPiA+ICsNCj4gPiArICAgICAgIGZyZWVfdHJhY2suc3RhY2sg ID0gYWxsb2NfaW5mby0+cmN1X2ZyZWVfc3RhY2tbMF07DQo+ID4gKyAgICAgICBwcmludF90cmFj aygmZnJlZV90cmFjaywgIkZpcnN0IGNhbGxfcmN1KCkgY2FsbCBzdGFjayIsIHRydWUpOw0KPiA+ ICsgICAgICAgcHJfZXJyKCJcbiIpOw0KPiA+ICsgICAgICAgZnJlZV90cmFjay5zdGFjayAgPSBh bGxvY19pbmZvLT5yY3VfZnJlZV9zdGFja1sxXTsNCj4gPiArICAgICAgIHByaW50X3RyYWNrKCZm cmVlX3RyYWNrLCAiTGFzdCBjYWxsX3JjdSgpIGNhbGwgc3RhY2siLCB0cnVlKTsNCj4gPiArICAg ICAgIHByX2VycigiXG4iKTsNCj4gPiArfQ0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gIHN0YXRp YyBzdHJ1Y3Qga2FzYW5fdHJhY2sgKmthc2FuX2dldF9mcmVlX3RyYWNrKHN0cnVjdCBrbWVtX2Nh Y2hlICpjYWNoZSwNCj4gPiAtICAgICAgICAgICAgICAgdm9pZCAqb2JqZWN0LCB1OCB0YWcpDQo+ ID4gKyAgICAgICAgICAgICAgIHZvaWQgKm9iamVjdCwgdTggdGFnLCBjb25zdCB2b2lkICphZGRy KQ0KPiA+ICB7DQo+ID4gICAgICAgICBzdHJ1Y3Qga2FzYW5fYWxsb2NfbWV0YSAqYWxsb2NfbWV0 YTsNCj4gPiAgICAgICAgIGludCBpID0gMDsNCj4gPiBAQCAtMTg3LDExICsyMDUsMTQgQEAgc3Rh dGljIHZvaWQgZGVzY3JpYmVfb2JqZWN0KHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZSwgdm9pZCAq b2JqZWN0LA0KPiA+ICAgICAgICAgaWYgKGNhY2hlLT5mbGFncyAmIFNMQUJfS0FTQU4pIHsNCj4g PiAgICAgICAgICAgICAgICAgc3RydWN0IGthc2FuX3RyYWNrICpmcmVlX3RyYWNrOw0KPiA+DQo+ ID4gLSAgICAgICAgICAgICAgIHByaW50X3RyYWNrKCZhbGxvY19pbmZvLT5hbGxvY190cmFjaywg IkFsbG9jYXRlZCIpOw0KPiA+ICsgICAgICAgICAgICAgICBwcmludF90cmFjaygmYWxsb2NfaW5m by0+YWxsb2NfdHJhY2ssICJBbGxvY2F0ZWQiLCBmYWxzZSk7DQo+ID4gICAgICAgICAgICAgICAg IHByX2VycigiXG4iKTsNCj4gPiAtICAgICAgICAgICAgICAgZnJlZV90cmFjayA9IGthc2FuX2dl dF9mcmVlX3RyYWNrKGNhY2hlLCBvYmplY3QsIHRhZyk7DQo+ID4gLSAgICAgICAgICAgICAgIHBy aW50X3RyYWNrKGZyZWVfdHJhY2ssICJGcmVlZCIpOw0KPiA+ICsgICAgICAgICAgICAgICBmcmVl X3RyYWNrID0ga2FzYW5fZ2V0X2ZyZWVfdHJhY2soY2FjaGUsIG9iamVjdCwgdGFnLCBhZGRyKTsN Cj4gPiArICAgICAgICAgICAgICAgcHJpbnRfdHJhY2soZnJlZV90cmFjaywgIkZyZWVkIiwgZmFs c2UpOw0KPiA+ICAgICAgICAgICAgICAgICBwcl9lcnIoIlxuIik7DQo+ID4gKyNpZmRlZiBDT05G SUdfS0FTQU5fUkNVX1NUQUNLX1JFQ09SRA0KPiA+ICsgICAgICAgICAgICAgICBrYXNhbl9wcmlu dF9yY3VfZnJlZV9zdGFjayhhbGxvY19pbmZvKTsNCj4gPiArI2VuZGlmDQo+ID4gICAgICAgICB9 DQo+ID4NCj4gPiAgICAgICAgIGRlc2NyaWJlX29iamVjdF9hZGRyKGNhY2hlLCBvYmplY3QsIGFk ZHIpOw0KPiA+IC0tDQo+ID4gMi4xOC4wDQo+ID4NCj4gPiAtLQ0KPiA+IFlvdSByZWNlaXZlZCB0 aGlzIG1lc3NhZ2UgYmVjYXVzZSB5b3UgYXJlIHN1YnNjcmliZWQgdG8gdGhlIEdvb2dsZSBHcm91 cHMgImthc2FuLWRldiIgZ3JvdXAuDQo+ID4gVG8gdW5zdWJzY3JpYmUgZnJvbSB0aGlzIGdyb3Vw IGFuZCBzdG9wIHJlY2VpdmluZyBlbWFpbHMgZnJvbSBpdCwgc2VuZCBhbiBlbWFpbCB0byBrYXNh bi1kZXYrdW5zdWJzY3JpYmVAZ29vZ2xlZ3JvdXBzLmNvbS4NCj4gPiBUbyB2aWV3IHRoaXMgZGlz Y3Vzc2lvbiBvbiB0aGUgd2ViIHZpc2l0IGh0dHBzOi8vZ3JvdXBzLmdvb2dsZS5jb20vZC9tc2dp ZC9rYXNhbi1kZXYvMjAyMDA1MDYwNTIwNDYuMTQ0NTEtMS13YWx0ZXItemgud3UlNDBtZWRpYXRl ay5jb20uDQoNCg==