Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp1513597ybk; Sun, 10 May 2020 19:34:05 -0700 (PDT) X-Google-Smtp-Source: APiQypJRj2GxNUUxP2zhCFBFrWBUwbnaCAD2GHBfFXhQar2u781sk0qKHs/IHIYLH3bs6DzsJDV5 X-Received: by 2002:a17:906:b250:: with SMTP id ce16mr10984800ejb.216.1589164445206; Sun, 10 May 2020 19:34:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589164445; cv=none; d=google.com; s=arc-20160816; b=XrnIDAw2pmbJU7ecBbJ0PCjxQ31yE93Nli/m5kkNejKJRRuxEFjWO4YMfYWdwm2dca ks2AfoMMSnCU4nBZBpyx0AedPOpKNWyOztY/r07FNHicpne7uHbhsU6Lw0Ubqmj0HBVT 2bsCP+n0KbhQp5YRZsTKZKF9SoKLHqZCG4KMdd3ZGK5vwfimve3iH/6puwzPVI+zmlw6 DBAeMw2+T0yEeDlcGPYqTa1l3zBThLa+1oyABxVvNThcKecOafIkAcKZAb3sHf5FPzxC ens7WkI15XHQ4OEwRF2p7TOZJyrwbEY34jcfj7DsttCh1Mfp3hjLGoncviTT8g+sp6OD 8yfQ== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=YtnofhKrp6VKNNkt1aec9PQCdva125/vHWFsb6tBfsY=; b=ns4EhcjundbpiuJUYDgmo334K3T3UaVnRlOBPZU+vjsjn9IcXdbk5gTgij6yVkT263 FhbavvmhZOPJS3B9W7Ks3FdLIoMpqX+38sqWLoxVAe/HfHh5q9yhWWX6mQcWpfNXzPMk DleG9xjdwa1Mijwr4WWjbjZwbq++YiACC/vIV5n2vtIoICTDAzhcDiNfvvfRwXz3MxIt jB/TlthFvd6uxkE4KZte1HUYr9ixtHDTpOoCtI7SGeF83jor5rSIdXFvtIFYLgB4pZ2D jqCtbbtrK+doIpfH1Ml5niH4x6kVp/0D1etZIxNCY9K6V5ao/YsWLlygKSBQge3I0+nM BpPQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b="Xk/Gft7g"; 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 j20si5027487ejs.316.2020.05.10.19.33.32; Sun, 10 May 2020 19:34:05 -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="Xk/Gft7g"; 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 S1729283AbgEKCbY (ORCPT + 99 others); Sun, 10 May 2020 22:31:24 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:23973 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1729220AbgEKCbX (ORCPT ); Sun, 10 May 2020 22:31:23 -0400 X-UUID: 4d0635ef7d954ad49f852b83bb9fc77d-20200511 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=YtnofhKrp6VKNNkt1aec9PQCdva125/vHWFsb6tBfsY=; b=Xk/Gft7gZJ/n02InXJNSj7atxZAUx0uwGuLzNfINewjYQ6OhQI0JehZcir8mxknlqxxPz0/4RtVzDo2ZvcHIiMD0aNO+qP/6wko9S+qv140zdslkyQjQcKlUQGIlyiq7e2xfCpSKd2NDxrro9EtgmFE/XKh9e/yi4EDUeOuhjzo=; X-UUID: 4d0635ef7d954ad49f852b83bb9fc77d-20200511 Received: from mtkcas10.mediatek.inc [(172.21.101.39)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1341370935; Mon, 11 May 2020 10:31:14 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs06n1.mediatek.inc (172.21.101.129) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 11 May 2020 10:31:12 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Mon, 11 May 2020 10:31:12 +0800 From: Walter Wu To: Andrey Ryabinin , Alexander Potapenko , Dmitry Vyukov , Matthias Brugger , "Paul E . McKenney" , Josh Triplett , Mathieu Desnoyers , Lai Jiangshan , Joel Fernandes , Andrew Morton CC: , , , , wsd_upstream , , Walter Wu Subject: [PATCH v2 1/3] rcu/kasan: record and print call_rcu() call stack Date: Mon, 11 May 2020 10:31:11 +0800 Message-ID: <20200511023111.15310-1-walter-zh.wu@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 Content-Type: text/plain 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 VGhpcyBmZWF0dXJlIHdpbGwgcmVjb3JkIGZpcnN0IGFuZCBsYXN0IGNhbGxfcmN1KCkgY2FsbCBz dGFjayBhbmQNCnByaW50IHR3byBjYWxsX3JjdSgpIGNhbGwgc3RhY2sgaW4gS0FTQU4gcmVwb3J0 Lg0KDQpXaGVuIGNhbGxfcmN1KCkgaXMgY2FsbGVkLCB3ZSBzdG9yZSB0aGUgY2FsbF9yY3UoKSBj YWxsIHN0YWNrIGludG8NCnNsdWIgYWxsb2MgbWV0YS1kYXRhLCBzbyB0aGF0IEtBU0FOIHJlcG9y dCBjYW4gcHJpbnQgcmN1IHN0YWNrLg0KDQpJdCBkb2Vzbid0IGluY3JlYXNlIHRoZSBjb3N0IG9m IG1lbW9yeSBjb25zdW1wdGlvbi4gQmVjYXVzZSB3ZSBkb24ndA0KZW5sYXJnZSBzdHJ1Y3Qga2Fz YW5fYWxsb2NfbWV0YSBzaXplLg0KLSBhZGQgdHdvIGNhbGxfcmN1KCkgY2FsbCBzdGFjayBpbnRv IGthc2FuX2FsbG9jX21ldGEsIHNpemUgaXMgOCBieXRlcy4NCi0gcmVtb3ZlIGZyZWUgdHJhY2sg ZnJvbSBrYXNhbl9hbGxvY19tZXRhLCBzaXplIGlzIDggYnl0ZXMuDQoNClsxXWh0dHBzOi8vYnVn emlsbGEua2VybmVsLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4NDM3DQpbMl1odHRwczovL2dyb3Vw cy5nb29nbGUuY29tL2ZvcnVtLyMhc2VhcmNoaW4va2FzYW4tZGV2L2JldHRlciQyMHN0YWNrJDIw dHJhY2VzJDIwZm9yJDIwcmN1JTdDc29ydDpkYXRlL2thc2FuLWRldi9LUXNqVF84OGhERS83ck5V WnByUkJnQUoNCg0KU2lnbmVkLW9mZi1ieTogV2FsdGVyIFd1IDx3YWx0ZXItemgud3VAbWVkaWF0 ZWsuY29tPg0KU3VnZ2VzdGVkLWJ5OiBEbWl0cnkgVnl1a292IDxkdnl1a292QGdvb2dsZS5jb20+ DQpDYzogQW5kcmV5IFJ5YWJpbmluIDxhcnlhYmluaW5AdmlydHVvenpvLmNvbT4NCkNjOiBEbWl0 cnkgVnl1a292IDxkdnl1a292QGdvb2dsZS5jb20+DQpDYzogQWxleGFuZGVyIFBvdGFwZW5rbyA8 Z2xpZGVyQGdvb2dsZS5jb20+DQpDYzogQW5kcmV3IE1vcnRvbiA8YWtwbUBsaW51eC1mb3VuZGF0 aW9uLm9yZz4NCkNjOiBQYXVsIEUuIE1jS2VubmV5IDxwYXVsbWNrQGtlcm5lbC5vcmc+DQpDYzog Sm9zaCBUcmlwbGV0dCA8am9zaEBqb3NodHJpcGxldHQub3JnPg0KQ2M6IE1hdGhpZXUgRGVzbm95 ZXJzIDxtYXRoaWV1LmRlc25veWVyc0BlZmZpY2lvcy5jb20+DQpDYzogTGFpIEppYW5nc2hhbiA8 amlhbmdzaGFubGFpQGdtYWlsLmNvbT4NCkNjOiBKb2VsIEZlcm5hbmRlcyA8am9lbEBqb2VsZmVy bmFuZGVzLm9yZz4NCi0tLQ0KIGluY2x1ZGUvbGludXgva2FzYW4uaCB8ICAyICsrDQoga2VybmVs L3JjdS90cmVlLmMgICAgIHwgIDMgKysrDQogbGliL0tjb25maWcua2FzYW4gICAgIHwgIDIgKysN CiBtbS9rYXNhbi9jb21tb24uYyAgICAgfCAgNCArKy0tDQogbW0va2FzYW4vZ2VuZXJpYy5jICAg IHwgMjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCiBtbS9rYXNhbi9rYXNhbi5oICAg ICAgfCAxOSArKysrKysrKysrKysrKysrKysrDQogbW0va2FzYW4vcmVwb3J0LmMgICAgIHwgMjEg KysrKysrKysrKysrKysrKystLS0tDQogNyBmaWxlcyBjaGFuZ2VkLCA3NCBpbnNlcnRpb25zKCsp LCA2IGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9rYXNhbi5oIGIv aW5jbHVkZS9saW51eC9rYXNhbi5oDQppbmRleCAzMTMxNGNhN2M2MzUuLjIzYjdlZTAwNTcyZCAx MDA2NDQNCi0tLSBhL2luY2x1ZGUvbGludXgva2FzYW4uaA0KKysrIGIvaW5jbHVkZS9saW51eC9r YXNhbi5oDQpAQCAtMTc0LDExICsxNzQsMTMgQEAgc3RhdGljIGlubGluZSBzaXplX3Qga2FzYW5f bWV0YWRhdGFfc2l6ZShzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUpIHsgcmV0dXJuIDA7IH0NCiAN CiB2b2lkIGthc2FuX2NhY2hlX3NocmluayhzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUpOw0KIHZv aWQga2FzYW5fY2FjaGVfc2h1dGRvd24oc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlKTsNCit2b2lk IGthc2FuX3JlY29yZF9hdXhfc3RhY2sodm9pZCAqcHRyKTsNCiANCiAjZWxzZSAvKiBDT05GSUdf S0FTQU5fR0VORVJJQyAqLw0KIA0KIHN0YXRpYyBpbmxpbmUgdm9pZCBrYXNhbl9jYWNoZV9zaHJp bmsoc3RydWN0IGttZW1fY2FjaGUgKmNhY2hlKSB7fQ0KIHN0YXRpYyBpbmxpbmUgdm9pZCBrYXNh bl9jYWNoZV9zaHV0ZG93bihzdHJ1Y3Qga21lbV9jYWNoZSAqY2FjaGUpIHt9DQorc3RhdGljIGlu bGluZSB2b2lkIGthc2FuX3JlY29yZF9hdXhfc3RhY2sodm9pZCAqcHRyKSB7fQ0KIA0KICNlbmRp ZiAvKiBDT05GSUdfS0FTQU5fR0VORVJJQyAqLw0KIA0KZGlmZiAtLWdpdCBhL2tlcm5lbC9yY3Uv dHJlZS5jIGIva2VybmVsL3JjdS90cmVlLmMNCmluZGV4IDA2NTQ4ZTJlYmI3Mi4uZGU4NzJiNmNj MjYxIDEwMDY0NA0KLS0tIGEva2VybmVsL3JjdS90cmVlLmMNCisrKyBiL2tlcm5lbC9yY3UvdHJl ZS5jDQpAQCAtNTcsNiArNTcsNyBAQA0KICNpbmNsdWRlIDxsaW51eC9zbGFiLmg+DQogI2luY2x1 ZGUgPGxpbnV4L3NjaGVkL2lzb2xhdGlvbi5oPg0KICNpbmNsdWRlIDxsaW51eC9zY2hlZC9jbG9j ay5oPg0KKyNpbmNsdWRlIDxsaW51eC9rYXNhbi5oPg0KICNpbmNsdWRlICIuLi90aW1lL3RpY2st aW50ZXJuYWwuaCINCiANCiAjaW5jbHVkZSAidHJlZS5oIg0KQEAgLTI2OTQsNiArMjY5NSw4IEBA IF9fY2FsbF9yY3Uoc3RydWN0IHJjdV9oZWFkICpoZWFkLCByY3VfY2FsbGJhY2tfdCBmdW5jKQ0K IAkJdHJhY2VfcmN1X2NhbGxiYWNrKHJjdV9zdGF0ZS5uYW1lLCBoZWFkLA0KIAkJCQkgICByY3Vf c2VnY2JsaXN0X25fY2JzKCZyZHAtPmNibGlzdCkpOw0KIA0KKwlrYXNhbl9yZWNvcmRfYXV4X3N0 YWNrKGhlYWQpOw0KKw0KIAkvKiBHbyBoYW5kbGUgYW55IFJDVSBjb3JlIHByb2Nlc3NpbmcgcmVx dWlyZWQuICovDQogCWlmIChJU19FTkFCTEVEKENPTkZJR19SQ1VfTk9DQl9DUFUpICYmDQogCSAg ICB1bmxpa2VseShyY3Vfc2VnY2JsaXN0X2lzX29mZmxvYWRlZCgmcmRwLT5jYmxpc3QpKSkgew0K ZGlmZiAtLWdpdCBhL2xpYi9LY29uZmlnLmthc2FuIGIvbGliL0tjb25maWcua2FzYW4NCmluZGV4 IDgxZjU0NjRlYTllMS4uNTZhODkyOTFmMWNjIDEwMDY0NA0KLS0tIGEvbGliL0tjb25maWcua2Fz YW4NCisrKyBiL2xpYi9LY29uZmlnLmthc2FuDQpAQCAtNTgsNiArNTgsOCBAQCBjb25maWcgS0FT QU5fR0VORVJJQw0KIAkgIEZvciBiZXR0ZXIgZXJyb3IgZGV0ZWN0aW9uIGVuYWJsZSBDT05GSUdf U1RBQ0tUUkFDRS4NCiAJICBDdXJyZW50bHkgQ09ORklHX0tBU0FOX0dFTkVSSUMgZG9lc24ndCB3 b3JrIHdpdGggQ09ORklHX0RFQlVHX1NMQUINCiAJICAodGhlIHJlc3VsdGluZyBrZXJuZWwgZG9l cyBub3QgYm9vdCkuDQorCSAgQ3VycmVudGx5IENPTkZJR19LQVNBTl9HRU5FUklDIHdpbGwgcHJp bnQgZmlyc3QgYW5kIGxhc3QgY2FsbF9yY3UoKQ0KKwkgIGNhbGwgc3RhY2suIEl0IGRvZXNuJ3Qg aW5jcmVhc2UgdGhlIGNvc3Qgb2YgbWVtb3J5IGNvbnN1bXB0aW9uLg0KIA0KIGNvbmZpZyBLQVNB Tl9TV19UQUdTDQogCWJvb2wgIlNvZnR3YXJlIHRhZy1iYXNlZCBtb2RlIg0KZGlmZiAtLWdpdCBh L21tL2thc2FuL2NvbW1vbi5jIGIvbW0va2FzYW4vY29tbW9uLmMNCmluZGV4IDI5MDYzNThlNDJm MC4uOGJjNjE4Mjg5YmIxIDEwMDY0NA0KLS0tIGEvbW0va2FzYW4vY29tbW9uLmMNCisrKyBiL21t L2thc2FuL2NvbW1vbi5jDQpAQCAtNDEsNyArNDEsNyBAQA0KICNpbmNsdWRlICJrYXNhbi5oIg0K ICNpbmNsdWRlICIuLi9zbGFiLmgiDQogDQotc3RhdGljIGlubGluZSBkZXBvdF9zdGFja19oYW5k bGVfdCBzYXZlX3N0YWNrKGdmcF90IGZsYWdzKQ0KK2RlcG90X3N0YWNrX2hhbmRsZV90IGthc2Fu X3NhdmVfc3RhY2soZ2ZwX3QgZmxhZ3MpDQogew0KIAl1bnNpZ25lZCBsb25nIGVudHJpZXNbS0FT QU5fU1RBQ0tfREVQVEhdOw0KIAl1bnNpZ25lZCBpbnQgbnJfZW50cmllczsNCkBAIC01NCw3ICs1 NCw3IEBAIHN0YXRpYyBpbmxpbmUgZGVwb3Rfc3RhY2tfaGFuZGxlX3Qgc2F2ZV9zdGFjayhnZnBf dCBmbGFncykNCiBzdGF0aWMgaW5saW5lIHZvaWQgc2V0X3RyYWNrKHN0cnVjdCBrYXNhbl90cmFj ayAqdHJhY2ssIGdmcF90IGZsYWdzKQ0KIHsNCiAJdHJhY2stPnBpZCA9IGN1cnJlbnQtPnBpZDsN Ci0JdHJhY2stPnN0YWNrID0gc2F2ZV9zdGFjayhmbGFncyk7DQorCXRyYWNrLT5zdGFjayA9IGth c2FuX3NhdmVfc3RhY2soZmxhZ3MpOw0KIH0NCiANCiB2b2lkIGthc2FuX2VuYWJsZV9jdXJyZW50 KHZvaWQpDQpkaWZmIC0tZ2l0IGEvbW0va2FzYW4vZ2VuZXJpYy5jIGIvbW0va2FzYW4vZ2VuZXJp Yy5jDQppbmRleCA1NmZmODg4NWZlMmUuLmI4Njg4MGMzMzhlMiAxMDA2NDQNCi0tLSBhL21tL2th c2FuL2dlbmVyaWMuYw0KKysrIGIvbW0va2FzYW4vZ2VuZXJpYy5jDQpAQCAtMzI1LDMgKzMyNSwz MiBAQCBERUZJTkVfQVNBTl9TRVRfU0hBRE9XKGYyKTsNCiBERUZJTkVfQVNBTl9TRVRfU0hBRE9X KGYzKTsNCiBERUZJTkVfQVNBTl9TRVRfU0hBRE9XKGY1KTsNCiBERUZJTkVfQVNBTl9TRVRfU0hB RE9XKGY4KTsNCisNCit2b2lkIGthc2FuX3JlY29yZF9hdXhfc3RhY2sodm9pZCAqYWRkcikNCit7 DQorCXN0cnVjdCBwYWdlICpwYWdlID0ga2FzYW5fYWRkcl90b19wYWdlKGFkZHIpOw0KKwlzdHJ1 Y3Qga21lbV9jYWNoZSAqY2FjaGU7DQorCXN0cnVjdCBrYXNhbl9hbGxvY19tZXRhICphbGxvY19p bmZvOw0KKwl2b2lkICpvYmplY3Q7DQorDQorCWlmICghKHBhZ2UgJiYgUGFnZVNsYWIocGFnZSkp KQ0KKwkJcmV0dXJuOw0KKw0KKwljYWNoZSA9IHBhZ2UtPnNsYWJfY2FjaGU7DQorCW9iamVjdCA9 IG5lYXJlc3Rfb2JqKGNhY2hlLCBwYWdlLCBhZGRyKTsNCisJYWxsb2NfaW5mbyA9IGdldF9hbGxv Y19pbmZvKGNhY2hlLCBvYmplY3QpOw0KKw0KKwlpZiAoIWFsbG9jX2luZm8tPnJjdV9zdGFja1sw XSkNCisJCS8qIHJlY29yZCBmaXJzdCBjYWxsX3JjdSgpIGNhbGwgc3RhY2sgKi8NCisJCWFsbG9j X2luZm8tPnJjdV9zdGFja1swXSA9IGthc2FuX3NhdmVfc3RhY2soR0ZQX05PV0FJVCk7DQorCWVs c2UNCisJCS8qIHJlY29yZCBsYXN0IGNhbGxfcmN1KCkgY2FsbCBzdGFjayAqLw0KKwkJYWxsb2Nf aW5mby0+cmN1X3N0YWNrWzFdID0ga2FzYW5fc2F2ZV9zdGFjayhHRlBfTk9XQUlUKTsNCit9DQor DQorc3RydWN0IGthc2FuX3RyYWNrICprYXNhbl9nZXRfYXV4X3N0YWNrKHN0cnVjdCBrYXNhbl9h bGxvY19tZXRhICphbGxvY19pbmZvLA0KKwkJCQkJCXU4IGlkeCkNCit7DQorCXJldHVybiBjb250 YWluZXJfb2YoJmFsbG9jX2luZm8tPnJjdV9zdGFja1tpZHhdLA0KKwkJCQkJCXN0cnVjdCBrYXNh bl90cmFjaywgc3RhY2spOw0KK30NCmRpZmYgLS1naXQgYS9tbS9rYXNhbi9rYXNhbi5oIGIvbW0v a2FzYW4va2FzYW4uaA0KaW5kZXggZThmMzcxOTlkODg1Li4xY2MxZmI3YjBkZTMgMTAwNjQ0DQot LS0gYS9tbS9rYXNhbi9rYXNhbi5oDQorKysgYi9tbS9rYXNhbi9rYXNhbi5oDQpAQCAtOTYsMTUg Kzk2LDI4IEBAIHN0cnVjdCBrYXNhbl90cmFjayB7DQogCWRlcG90X3N0YWNrX2hhbmRsZV90IHN0 YWNrOw0KIH07DQogDQorI2lmZGVmIENPTkZJR19LQVNBTl9HRU5FUklDDQorI2RlZmluZSBTSVpF T0ZfUFRSIHNpemVvZih2b2lkICopDQorI2RlZmluZSBLQVNBTl9OUl9SQ1VfQ0FMTF9TVEFDS1Mg Mg0KKyNlbHNlIC8qIENPTkZJR19LQVNBTl9HRU5FUklDICovDQogI2lmZGVmIENPTkZJR19LQVNB Tl9TV19UQUdTX0lERU5USUZZDQogI2RlZmluZSBLQVNBTl9OUl9GUkVFX1NUQUNLUyA1DQogI2Vs c2UNCiAjZGVmaW5lIEtBU0FOX05SX0ZSRUVfU1RBQ0tTIDENCiAjZW5kaWYNCisjZW5kaWYgLyog Q09ORklHX0tBU0FOX0dFTkVSSUMgKi8NCiANCiBzdHJ1Y3Qga2FzYW5fYWxsb2NfbWV0YSB7DQog CXN0cnVjdCBrYXNhbl90cmFjayBhbGxvY190cmFjazsNCisjaWZkZWYgQ09ORklHX0tBU0FOX0dF TkVSSUMNCisJLyoNCisJICogY2FsbF9yY3UoKSBjYWxsIHN0YWNrIGlzIHN0b3JlZCBpbnRvIHN0 cnVjdCBrYXNhbl9hbGxvY19tZXRhLg0KKwkgKiBUaGUgZnJlZSBzdGFjayBpcyBzdG9yZWQgaW50 byBmcmVlZCBvYmplY3QuDQorCSAqLw0KKwlkZXBvdF9zdGFja19oYW5kbGVfdCByY3Vfc3RhY2tb S0FTQU5fTlJfUkNVX0NBTExfU1RBQ0tTXTsNCisjZWxzZQ0KIAlzdHJ1Y3Qga2FzYW5fdHJhY2sg ZnJlZV90cmFja1tLQVNBTl9OUl9GUkVFX1NUQUNLU107DQorI2VuZGlmDQogI2lmZGVmIENPTkZJ R19LQVNBTl9TV19UQUdTX0lERU5USUZZDQogCXU4IGZyZWVfcG9pbnRlcl90YWdbS0FTQU5fTlJf RlJFRV9TVEFDS1NdOw0KIAl1OCBmcmVlX3RyYWNrX2lkeDsNCkBAIC0xNTksMTYgKzE3MiwyMiBA QCB2b2lkIGthc2FuX3JlcG9ydF9pbnZhbGlkX2ZyZWUodm9pZCAqb2JqZWN0LCB1bnNpZ25lZCBs b25nIGlwKTsNCiANCiBzdHJ1Y3QgcGFnZSAqa2FzYW5fYWRkcl90b19wYWdlKGNvbnN0IHZvaWQg KmFkZHIpOw0KIA0KK2RlcG90X3N0YWNrX2hhbmRsZV90IGthc2FuX3NhdmVfc3RhY2soZ2ZwX3Qg ZmxhZ3MpOw0KKw0KICNpZiBkZWZpbmVkKENPTkZJR19LQVNBTl9HRU5FUklDKSAmJiBcDQogCShk ZWZpbmVkKENPTkZJR19TTEFCKSB8fCBkZWZpbmVkKENPTkZJR19TTFVCKSkNCiB2b2lkIHF1YXJh bnRpbmVfcHV0KHN0cnVjdCBrYXNhbl9mcmVlX21ldGEgKmluZm8sIHN0cnVjdCBrbWVtX2NhY2hl ICpjYWNoZSk7DQogdm9pZCBxdWFyYW50aW5lX3JlZHVjZSh2b2lkKTsNCiB2b2lkIHF1YXJhbnRp bmVfcmVtb3ZlX2NhY2hlKHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZSk7DQorc3RydWN0IGthc2Fu X3RyYWNrICprYXNhbl9nZXRfYXV4X3N0YWNrKHN0cnVjdCBrYXNhbl9hbGxvY19tZXRhICphbGxv Y19pbmZvLA0KKwkJCXU4IGlkeCk7DQogI2Vsc2UNCiBzdGF0aWMgaW5saW5lIHZvaWQgcXVhcmFu dGluZV9wdXQoc3RydWN0IGthc2FuX2ZyZWVfbWV0YSAqaW5mbywNCiAJCQkJc3RydWN0IGttZW1f Y2FjaGUgKmNhY2hlKSB7IH0NCiBzdGF0aWMgaW5saW5lIHZvaWQgcXVhcmFudGluZV9yZWR1Y2Uo dm9pZCkgeyB9DQogc3RhdGljIGlubGluZSB2b2lkIHF1YXJhbnRpbmVfcmVtb3ZlX2NhY2hlKHN0 cnVjdCBrbWVtX2NhY2hlICpjYWNoZSkgeyB9DQorc3RhdGljIGlubGluZSBzdHJ1Y3Qga2FzYW5f dHJhY2sgKmthc2FuX2dldF9hdXhfc3RhY2soDQorCQkJc3RydWN0IGthc2FuX2FsbG9jX21ldGEg KmFsbG9jX2luZm8sIHU4IGlkeCkgeyByZXR1cm4gTlVMTDsgfQ0KICNlbmRpZg0KIA0KICNpZmRl ZiBDT05GSUdfS0FTQU5fU1dfVEFHUw0KZGlmZiAtLWdpdCBhL21tL2thc2FuL3JlcG9ydC5jIGIv bW0va2FzYW4vcmVwb3J0LmMNCmluZGV4IDgwZjIzYzlkYTZiMC4uZjE2YTFhMjEwODE1IDEwMDY0 NA0KLS0tIGEvbW0va2FzYW4vcmVwb3J0LmMNCisrKyBiL21tL2thc2FuL3JlcG9ydC5jDQpAQCAt MTA1LDkgKzEwNSwxMyBAQCBzdGF0aWMgdm9pZCBlbmRfcmVwb3J0KHVuc2lnbmVkIGxvbmcgKmZs YWdzKQ0KIAlrYXNhbl9lbmFibGVfY3VycmVudCgpOw0KIH0NCiANCi1zdGF0aWMgdm9pZCBwcmlu dF90cmFjayhzdHJ1Y3Qga2FzYW5fdHJhY2sgKnRyYWNrLCBjb25zdCBjaGFyICpwcmVmaXgpDQor c3RhdGljIHZvaWQgcHJpbnRfdHJhY2soc3RydWN0IGthc2FuX3RyYWNrICp0cmFjaywgY29uc3Qg Y2hhciAqcHJlZml4LA0KKwkJCQkJCWJvb2wgaXNfY2FsbHJjdSkNCiB7DQotCXByX2VycigiJXMg YnkgdGFzayAldTpcbiIsIHByZWZpeCwgdHJhY2stPnBpZCk7DQorCWlmIChpc19jYWxscmN1KQ0K KwkJcHJfZXJyKCIlczpcbiIsIHByZWZpeCk7DQorCWVsc2UNCisJCXByX2VycigiJXMgYnkgdGFz ayAldTpcbiIsIHByZWZpeCwgdHJhY2stPnBpZCk7DQogCWlmICh0cmFjay0+c3RhY2spIHsNCiAJ CXVuc2lnbmVkIGxvbmcgKmVudHJpZXM7DQogCQl1bnNpZ25lZCBpbnQgbnJfZW50cmllczsNCkBA IC0xODcsMTEgKzE5MSwyMCBAQCBzdGF0aWMgdm9pZCBkZXNjcmliZV9vYmplY3Qoc3RydWN0IGtt ZW1fY2FjaGUgKmNhY2hlLCB2b2lkICpvYmplY3QsDQogCWlmIChjYWNoZS0+ZmxhZ3MgJiBTTEFC X0tBU0FOKSB7DQogCQlzdHJ1Y3Qga2FzYW5fdHJhY2sgKmZyZWVfdHJhY2s7DQogDQotCQlwcmlu dF90cmFjaygmYWxsb2NfaW5mby0+YWxsb2NfdHJhY2ssICJBbGxvY2F0ZWQiKTsNCisJCXByaW50 X3RyYWNrKCZhbGxvY19pbmZvLT5hbGxvY190cmFjaywgIkFsbG9jYXRlZCIsIGZhbHNlKTsNCiAJ CXByX2VycigiXG4iKTsNCiAJCWZyZWVfdHJhY2sgPSBrYXNhbl9nZXRfZnJlZV90cmFjayhjYWNo ZSwgb2JqZWN0LCB0YWcpOw0KLQkJcHJpbnRfdHJhY2soZnJlZV90cmFjaywgIkZyZWVkIik7DQor CQlwcmludF90cmFjayhmcmVlX3RyYWNrLCAiRnJlZWQiLCBmYWxzZSk7DQogCQlwcl9lcnIoIlxu Iik7DQorDQorCQlpZiAoSVNfRU5BQkxFRChDT05GSUdfS0FTQU5fR0VORVJJQykpIHsNCisJCQlm cmVlX3RyYWNrID0ga2FzYW5fZ2V0X2F1eF9zdGFjayhhbGxvY19pbmZvLCAwKTsNCisJCQlwcmlu dF90cmFjayhmcmVlX3RyYWNrLCAiRmlyc3QgY2FsbF9yY3UoKSBjYWxsIHN0YWNrIiwgdHJ1ZSk7 DQorCQkJcHJfZXJyKCJcbiIpOw0KKwkJCWZyZWVfdHJhY2sgPSBrYXNhbl9nZXRfYXV4X3N0YWNr KGFsbG9jX2luZm8sIDEpOw0KKwkJCXByaW50X3RyYWNrKGZyZWVfdHJhY2ssICJMYXN0IGNhbGxf cmN1KCkgY2FsbCBzdGFjayIsIHRydWUpOw0KKwkJCXByX2VycigiXG4iKTsNCisJCX0NCiAJfQ0K IA0KIAlkZXNjcmliZV9vYmplY3RfYWRkcihjYWNoZSwgb2JqZWN0LCBhZGRyKTsNCi0tIA0KMi4x OC4wDQo=