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=-15.3 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 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 B873BC433DB for ; Mon, 22 Feb 2021 16:15:24 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 536C96024A for ; Mon, 22 Feb 2021 16:15:24 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 536C96024A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:Subject: From:References:To:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=MeTo8lheOq3uwSYFCfa1nZv8WlO3Zyrdo4LXXGhl8JM=; b=SAuaaNAgjVbR9WrhcEQJWcXKb lNyyQKk1T/8VO4vMeOwVWOlZMWB2CmSTBMpRizVwTqP4SxXbFAnxztUNQPzEYOlEd2MeUxiIsrENf 0KiLv41gKvGEewl6qIEzA8L4kUpmtUZS7yhjty1jCKedeUkLO5Q0qXasFKGiPbRjkaM5uXcjrfnZi BPGd3ZiusSHAxmcQ/j8qjLjzlG59w2J+tKRTjq7ChXNZOTaYK04B60tkgeYxy27FXhWSFsf/BD9Zi RFb6krZAkAv0J4X0Hs9yJalkB1gdLx9SeoRg88Rv3rJZCqzk07Yoo0erg/e8jC2a+Xm7VM0YHlYss DD4ay4DSw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1lEDqI-0000f6-Pz; Mon, 22 Feb 2021 16:13:50 +0000 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1lEDqF-0000eZ-Ap for linux-arm-kernel@lists.infradead.org; Mon, 22 Feb 2021 16:13:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1614010426; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=vGnfE5dmtvOlJFPabKOkr4gF//An3LQV9JDbxXBmlGM=; b=b/+r/ZC/8/I9+wX6aRqSS3uNo6h99INeLl4pyc5mPR1ksOIEJ7am3tlyRGLOZiiEsmHVs8 0odojJasN9CFOwIV/eDXXDppPjQKth2dkciseFDJ60lxuKoA5qu54ageeCZ2q6WGY0dBWq 2oVbL7yC4pwN8qZLesN92APlxozbMbw= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-567-dSb2tbqLND-u__McrvQZgw-1; Mon, 22 Feb 2021 11:13:42 -0500 X-MC-Unique: dSb2tbqLND-u__McrvQZgw-1 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 44B161935780; Mon, 22 Feb 2021 16:13:39 +0000 (UTC) Received: from [10.36.115.16] (ovpn-115-16.ams2.redhat.com [10.36.115.16]) by smtp.corp.redhat.com (Postfix) with ESMTP id DD44E10016F4; Mon, 22 Feb 2021 16:13:34 +0000 (UTC) To: George Kennedy , Andrey Konovalov References: <487751e1ccec8fcd32e25a06ce000617e96d7ae1.1613595269.git.andreyknvl@google.com> <797fae72-e3ea-c0b0-036a-9283fa7f2317@oracle.com> <1ac78f02-d0af-c3ff-cc5e-72d6b074fc43@redhat.com> From: David Hildenbrand Organization: Red Hat GmbH Subject: Re: [PATCH] mm, kasan: don't poison boot memory Message-ID: <56c97056-6d8b-db0e-e303-421ee625abe3@redhat.com> Date: Mon, 22 Feb 2021 17:13:33 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210222_111347_647752_85F23C1C X-CRM114-Status: GOOD ( 41.93 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Linux ARM , Marco Elver , Dhaval Giani , Mike Rapoport , Catalin Marinas , Kevin Brodsky , Will Deacon , Branislav Rankov , kasan-dev , LKML , Christoph Hellwig , Linux Memory Management List , Alexander Potapenko , Evgenii Stepanov , Andrey Ryabinin , Konrad Rzeszutek Wilk , Andrew Morton , Vincenzo Frascino , Peter Collingbourne , Dmitry Vyukov Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMjIuMDIuMjEgMTY6MTMsIEdlb3JnZSBLZW5uZWR5IHdyb3RlOgo+IAo+IAo+IE9uIDIvMjIv MjAyMSA0OjUyIEFNLCBEYXZpZCBIaWxkZW5icmFuZCB3cm90ZToKPj4gT24gMjAuMDIuMjEgMDA6 MDQsIEdlb3JnZSBLZW5uZWR5IHdyb3RlOgo+Pj4KPj4+Cj4+PiBPbiAyLzE5LzIwMjEgMTE6NDUg QU0sIEdlb3JnZSBLZW5uZWR5IHdyb3RlOgo+Pj4+Cj4+Pj4KPj4+PiBPbiAyLzE4LzIwMjEgNzow OSBQTSwgQW5kcmV5IEtvbm92YWxvdiB3cm90ZToKPj4+Pj4gT24gRnJpLCBGZWIgMTksIDIwMjEg YXQgMTowNiBBTSBHZW9yZ2UgS2VubmVkeQo+Pj4+PiA8Z2VvcmdlLmtlbm5lZHlAb3JhY2xlLmNv bT4gd3JvdGU6Cj4+Pj4+Pgo+Pj4+Pj4KPj4+Pj4+IE9uIDIvMTgvMjAyMSAzOjU1IEFNLCBEYXZp ZCBIaWxkZW5icmFuZCB3cm90ZToKPj4+Pj4+PiBPbiAxNy4wMi4yMSAyMTo1NiwgQW5kcmV5IEtv bm92YWxvdiB3cm90ZToKPj4+Pj4+Pj4gRHVyaW5nIGJvb3QsIGFsbCBub24tcmVzZXJ2ZWQgbWVt YmxvY2sgbWVtb3J5IGlzIGV4cG9zZWQgdG8gdGhlCj4+Pj4+Pj4+IGJ1ZGR5Cj4+Pj4+Pj4+IGFs bG9jYXRvci4gUG9pc29uaW5nIGFsbCB0aGF0IG1lbW9yeSB3aXRoIEtBU0FOIGxlbmd0aGVucyBi b290Cj4+Pj4+Pj4+IHRpbWUsCj4+Pj4+Pj4+IGVzcGVjaWFsbHkgb24gc3lzdGVtcyB3aXRoIGxh cmdlIGFtb3VudCBvZiBSQU0uIFRoaXMgcGF0Y2ggbWFrZXMKPj4+Pj4+Pj4gcGFnZV9hbGxvYyB0 byBub3QgY2FsbCBrYXNhbl9mcmVlX3BhZ2VzKCkgb24gYWxsIG5ldyBtZW1vcnkuCj4+Pj4+Pj4+ Cj4+Pj4+Pj4+IF9fZnJlZV9wYWdlc19jb3JlKCkgaXMgdXNlZCB3aGVuIGV4cG9zaW5nIGZyZXNo IG1lbW9yeSBkdXJpbmcKPj4+Pj4+Pj4gc3lzdGVtCj4+Pj4+Pj4+IGJvb3QgYW5kIHdoZW4gb25s aW5pbmcgbWVtb3J5IGR1cmluZyBob3RwbHVnLiBUaGlzIHBhdGNoIGFkZHMgYSBuZXcKPj4+Pj4+ Pj4gRlBJX1NLSVBfS0FTQU5fUE9JU09OIGZsYWcgYW5kIHBhc3NlcyBpdCB0byBfX2ZyZWVfcGFn ZXNfb2soKQo+Pj4+Pj4+PiB0aHJvdWdoCj4+Pj4+Pj4+IGZyZWVfcGFnZXNfcHJlcGFyZSgpIGZy b20gX19mcmVlX3BhZ2VzX2NvcmUoKS4KPj4+Pj4+Pj4KPj4+Pj4+Pj4gVGhpcyBoYXMgbGl0dGxl IGltcGFjdCBvbiBLQVNBTiBtZW1vcnkgdHJhY2tpbmcuCj4+Pj4+Pj4+Cj4+Pj4+Pj4+IEFzc3Vt aW5nIHRoYXQgdGhlcmUgYXJlIG5vIHJlZmVyZW5jZXMgdG8gbmV3bHkgZXhwb3NlZCBwYWdlcwo+ Pj4+Pj4+PiBiZWZvcmUgdGhleQo+Pj4+Pj4+PiBhcmUgZXZlciBhbGxvY2F0ZWQsIHRoZXJlIHdv bid0IGJlIGFueSBpbnRlbmRlZCAoYnV0IGJ1Z2d5KQo+Pj4+Pj4+PiBhY2Nlc3NlcyB0bwo+Pj4+ Pj4+PiB0aGF0IG1lbW9yeSB0aGF0IEtBU0FOIHdvdWxkIG5vcm1hbGx5IGRldGVjdC4KPj4+Pj4+ Pj4KPj4+Pj4+Pj4gSG93ZXZlciwgd2l0aCB0aGlzIHBhdGNoLCBLQVNBTiBzdG9wcyBkZXRlY3Rp bmcgd2lsZCBhbmQgbGFyZ2UKPj4+Pj4+Pj4gb3V0LW9mLWJvdW5kcyBhY2Nlc3NlcyB0aGF0IGhh cHBlbiB0byBsYW5kIG9uIGEgZnJlc2ggbWVtb3J5IHBhZ2UKPj4+Pj4+Pj4gdGhhdAo+Pj4+Pj4+ PiB3YXMgbmV2ZXIgYWxsb2NhdGVkLiBUaGlzIGlzIHRha2VuIGFzIGFuIGFjY2VwdGFibGUgdHJh ZGUtb2ZmLgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBBbGwgbWVtb3J5IGFsbG9jYXRlZCBub3JtYWxseSB3 aGVuIHRoZSBib290IGlzIG92ZXIga2VlcHMgZ2V0dGluZwo+Pj4+Pj4+PiBwb2lzb25lZCBhcyB1 c3VhbC4KPj4+Pj4+Pj4KPj4+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogQW5kcmV5IEtvbm92YWxvdiA8 YW5kcmV5a252bEBnb29nbGUuY29tPgo+Pj4+Pj4+PiBDaGFuZ2UtSWQ6IElhZTZiMWU0YmI4MjE2 OTU1ZmZjMTRhZjI1NWE3ZWFhYTZmMzUzMjRkCj4+Pj4+Pj4gTm90IHN1cmUgdGhpcyBpcyB0aGUg cmlnaHQgdGhpbmcgdG8gZG8sIHNlZQo+Pj4+Pj4+Cj4+Pj4+Pj4gaHR0cHM6Ly9sa21sLmtlcm5l bC5vcmcvci9iY2Y4OTI1ZC0wOTQ5LTNmZTEtYmFhOC1jYzUzNmM1Mjk4NjBAb3JhY2xlLmNvbQo+ Pj4+Pj4+Cj4+Pj4+Pj4KPj4+Pj4+Pgo+Pj4+Pj4+IFJldmVyc2luZyB0aGUgb3JkZXIgaW4gd2hp Y2ggbWVtb3J5IGdldHMgYWxsb2NhdGVkICsgdXNlZCBkdXJpbmcKPj4+Pj4+PiBib290Cj4+Pj4+ Pj4gKGluIGEgcGF0Y2ggYnkgbWUpIG1pZ2h0IGhhdmUgcmV2ZWFsZWQgYW4gaW52YWxpZCBtZW1v cnkgYWNjZXNzCj4+Pj4+Pj4gZHVyaW5nCj4+Pj4+Pj4gYm9vdC4KPj4+Pj4+Pgo+Pj4+Pj4+IEkg c3VzcGVjdCB0aGF0IHRoYXQgaXNzdWUgd291bGQgbm8gbG9uZ2VyIGdldCBkZXRlY3RlZCB3aXRo IHlvdXIKPj4+Pj4+PiBwYXRjaCwgYXMgdGhlIGludmFsaWQgbWVtb3J5IGFjY2VzcyB3b3VsZCBz aW1wbHkgbm90IGdldCBkZXRlY3RlZC4KPj4+Pj4+PiBOb3csIEkgY2Fubm90IHByb3ZlIHRoYXQg OikKPj4+Pj4+IFNpbmNlIERhdmlkJ3MgcGF0Y2ggd2UncmUgaGF2aW5nIHRyb3VibGUgd2l0aCB0 aGUgaUJGVCBBQ1BJIHRhYmxlLAo+Pj4+Pj4gd2hpY2gKPj4+Pj4+IGlzIG1hcHBlZCBpbiB2aWEg a21hcCgpIC0gc2VlIGFjcGlfbWFwKCkgaW4gImRyaXZlcnMvYWNwaS9vc2wuYyIuCj4+Pj4+PiBL QVNBTgo+Pj4+Pj4gZGV0ZWN0cyB0aGF0IGl0IGlzIGJlaW5nIHVzZWQgYWZ0ZXIgZnJlZSB3aGVu IGliZnRfaW5pdCgpIGFjY2Vzc2VzCj4+Pj4+PiB0aGUKPj4+Pj4+IGlCRlQgdGFibGUsIGJ1dCBh cyBvZiB5ZXQgd2UgY2FuJ3QgZmluZCB3aGVyZSBpdCBnZXQncyBmcmVlZCAod2UndmUKPj4+Pj4+ IGluc3RydW1lbnRlZCBjYWxscyB0byBrdW5tYXAoKSkuCj4+Pj4+IE1heWJlIGl0IGRvZXNuJ3Qg Z2V0IGZyZWVkLCBidXQgd2hhdCB5b3Ugc2VlIGlzIGEgd2lsZCBvciBhIGxhcmdlCj4+Pj4+IG91 dC1vZi1ib3VuZHMgYWNjZXNzLiBTaW5jZSBLQVNBTiBtYXJrcyBhbGwgbWVtb3J5IGFzIGZyZWVk IGR1cmluZyB0aGUKPj4+Pj4gbWVtYmxvY2stPnBhZ2VfYWxsb2MgdHJhbnNpdGlvbiwgc3VjaCBi dWdzIGNhbiBtYW5pZmVzdCBhcwo+Pj4+PiB1c2UtYWZ0ZXItZnJlZXMuCj4+Pj4KPj4+PiBJdCBn ZXRzIGZyZWVkIGFuZCByZS11c2VkLiBCeSB0aGUgdGltZSB0aGUgaUJGVCB0YWJsZSBpcyBhY2Nl c3NlZCBieQo+Pj4+IGliZnRfaW5pdCgpIHRoZSBwYWdlIGhhcyBiZWVuIG92ZXItd3JpdHRlbi4K Pj4+Pgo+Pj4+IFNldHRpbmcgcGFnZSBmbGFncyBsaWtlIHRoZSBmb2xsb3dpbmcgYmVmb3JlIHRo ZSBjYWxsIHRvIGttYXAoKQo+Pj4+IHByZXZlbnRzIHRoZSBpQkZUIHRhYmxlIHBhZ2UgZnJvbSBi ZWluZyBmcmVlZDoKPj4+Cj4+PiBDbGVhbmVkIHVwIHZlcnNpb246Cj4+Pgo+Pj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvYWNwaS9vc2wuYyBiL2RyaXZlcnMvYWNwaS9vc2wuYwo+Pj4gaW5kZXggMDQx OGZlYi4uOGYwYThlNyAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvYWNwaS9vc2wuYwo+Pj4gKysr IGIvZHJpdmVycy9hY3BpL29zbC5jCj4+PiBAQCAtMjg3LDkgKzI4NywxMiBAQCBzdGF0aWMgdm9p ZCBfX2lvbWVtICphY3BpX21hcChhY3BpX3BoeXNpY2FsX2FkZHJlc3MKPj4+IHBnX29mZiwgdW5z aWduZWQgbG9uZyBwZ19zeikKPj4+Cj4+PiAgwqAgwqDCoMKgwqAgcGZuID0gcGdfb2ZmID4+IFBB R0VfU0hJRlQ7Cj4+PiAgwqAgwqDCoMKgwqAgaWYgKHNob3VsZF91c2Vfa21hcChwZm4pKSB7Cj4+ PiArwqDCoMKgIMKgwqDCoCBzdHJ1Y3QgcGFnZSAqcGFnZSA9IHBmbl90b19wYWdlKHBmbik7Cj4+ PiArCj4+PiAgwqAgwqDCoMKgwqAgwqDCoMKgIGlmIChwZ19zeiA+IFBBR0VfU0laRSkKPj4+ICDC oCDCoMKgwqDCoCDCoMKgwqAgwqDCoMKgIHJldHVybiBOVUxMOwo+Pj4gLcKgwqDCoCDCoMKgwqAg cmV0dXJuICh2b2lkIF9faW9tZW0gX19mb3JjZSAqKWttYXAocGZuX3RvX3BhZ2UocGZuKSk7Cj4+ PiArwqDCoMKgIMKgwqDCoCBTZXRQYWdlUmVzZXJ2ZWQocGFnZSk7Cj4+PiArwqDCoMKgIMKgwqDC oCByZXR1cm4gKHZvaWQgX19pb21lbSBfX2ZvcmNlICopa21hcChwYWdlKTsKPj4+ICDCoCDCoMKg wqDCoCB9IGVsc2UKPj4+ICDCoCDCoMKgwqDCoCDCoMKgwqAgcmV0dXJuIGFjcGlfb3NfaW9yZW1h cChwZ19vZmYsIHBnX3N6KTsKPj4+ICDCoCDCoH0KPj4+IEBAIC0yOTksOSArMzAyLDEyIEBAIHN0 YXRpYyB2b2lkIGFjcGlfdW5tYXAoYWNwaV9waHlzaWNhbF9hZGRyZXNzCj4+PiBwZ19vZmYsIHZv aWQgX19pb21lbSAqdmFkZHIpCj4+PiAgwqAgwqDCoMKgwqAgdW5zaWduZWQgbG9uZyBwZm47Cj4+ Pgo+Pj4gIMKgIMKgwqDCoMKgIHBmbiA9IHBnX29mZiA+PiBQQUdFX1NISUZUOwo+Pj4gLcKgwqDC oCBpZiAoc2hvdWxkX3VzZV9rbWFwKHBmbikpCj4+PiAtwqDCoMKgIMKgwqDCoCBrdW5tYXAocGZu X3RvX3BhZ2UocGZuKSk7Cj4+PiAtwqDCoMKgIGVsc2UKPj4+ICvCoMKgwqAgaWYgKHNob3VsZF91 c2Vfa21hcChwZm4pKSB7Cj4+PiArwqDCoMKgIMKgwqDCoCBzdHJ1Y3QgcGFnZSAqcGFnZSA9IHBm bl90b19wYWdlKHBmbik7Cj4+PiArCj4+PiArwqDCoMKgIMKgwqDCoCBDbGVhclBhZ2VSZXNlcnZl ZChwYWdlKTsKPj4+ICvCoMKgwqAgwqDCoMKgIGt1bm1hcChwYWdlKTsKPj4+ICvCoMKgwqAgfSBl bHNlCj4+PiAgwqAgwqDCoMKgwqAgwqDCoMKgIGlvdW5tYXAodmFkZHIpOwo+Pj4gIMKgIMKgfQo+ Pj4KPj4+IERhdmlkLCB0aGUgYWJvdmUgd29ya3MsIGJ1dCB3b25kZXJpbmcgd2h5IGl0IGlzIG5v dyBuZWNlc3NhcnkuIGt1bm1hcCgpCj4+PiBpcyBub3QgaGl0LiBXaGF0IG90aGVyIHdheXMgY291 bGQgYSBwYWdlIG1hcHBlZCB2aWEga21hcCgpIGJlIHVubWFwcGVkPwo+Pj4KPj4KPj4gTGV0IG1l IGxvb2sgaW50byB0aGUgY29kZSAuLi4gSSBoYXZlIGxpdHRsZSBleHBlcmllbmNlIHdpdGggQUNQ SQo+PiBkZXRhaWxzLCBzbyBiZWFyIHdpdGggbWUuCj4+Cj4+IEkgYXNzdW1lIHRoYXQgYWNwaV9t YXAoKS9hY3BpX3VubWFwKCkgbWFwIHNvbWUgZmlybXdhcmUgYmxvYiB0aGF0IGlzCj4+IHByb3Zp ZGVkIHZpYSBmaXJtd2FyZS9iaW9zLy4uLiB0byB1cy4KPj4KPj4gc2hvdWxkX3VzZV9rbWFwKCkg dGVsbHMgdXMgd2hldGhlcgo+PiBhKSB3ZSBoYXZlIGEgInN0cnVjdCBwYWdlIiBhbmQgc2hvdWxk IGttYXAoKSB0aGF0IG9uZQo+PiBiKSB3ZSBkb24ndCBoYXZlIGEgInN0cnVjdCBwYWdlIiBhbmQg c2hvdWxkIGlvcmVtYXAuCj4+Cj4+IEFzIGl0IGlzIGEgYmxvYiwgdGhlIGZpcm13YXJlIHNob3Vs ZCBhbHdheXMgcmVzZXJ2ZSB0aGF0IG1lbW9yeSByZWdpb24KPj4gdmlhIG1lbWJsb2NrIChlLmcu LCBtZW1ibG9ja19yZXNlcnZlKCkpLCBzdWNoIHRoYXQgd2UgZWl0aGVyCj4+IDEpIGRvbid0IGNy ZWF0ZSBhIG1lbW1hcCAoInN0cnVjdCBwYWdlIikgYXQgYWxsICgtPiBjYXNlIGIpICkKPj4gMikg aWYgd2UgaGF2ZSB0byBjcmVhdGUgZSBtZW1tYXAsIHdlIG1hcmsgdGhlIHBhZ2UgUEdfcmVzZXJ2 ZWQgYW5kCj4+ICDCoMKgICpuZXZlciogZXhwb3NlIGl0IHRvIHRoZSBidWRkeSAoLT4gY2FzZSBh KSApCj4+Cj4+Cj4+IEFyZSB5b3UgdGVsbGluZyBtZSB0aGF0IGluIHRoaXMgY2FzZSB3ZSBtaWdo dCBoYXZlIGEgbWVtbWFwIGZvciB0aGUgSFcKPj4gYmxvYiB0aGF0IGlzICpub3QqIFBHX3Jlc2Vy dmVkPyBJbiB0aGF0IGNhc2UgaXQgbW9zdCBwcm9iYWJseSBnb3QKPj4gZXhwb3NlZCB0byB0aGUg YnVkZHkgd2hlcmUgaXQgY2FuIGhhcHBpbHkgZ2V0IGFsbG9jYXRlZC9mcmVlZC4KPj4KPj4gVGhl IGxhdGVudCBCVUcgd291bGQgYmUgdGhhdCB0aGF0IGJsb2IgZ2V0cyBleHBvc2VkIHRvIHRoZSBz eXN0ZW0gbGlrZQo+PiBvcmRpbmFyeSBSQU0sIGFuZCBub3QgcmVzZXJ2ZWQgdmlhIG1lbWJsb2Nr IGVhcmx5IGR1cmluZyBib290Lgo+PiBBc3N1bWluZyB0aGF0IGJsb2IgaGFzIGEgbG93IHBoeXNp Y2FsIGFkZHJlc3MsIHdpdGggbXkgcGF0Y2ggaXQgd2lsbAo+PiBnZXQgYWxsb2NhdGVkL3VzZWQg YSBsb3QgZWFybGllciAtIHdoaWNoIHdvdWxkIG1lYW4gd2UgdHJpZ2dlciB0aGlzCj4+IGxhdGVu dCBCVUcgbm93IG1vcmUgZWFzaWx5Lgo+Pgo+PiBUaGVyZSBoYXZlIGJlZW4gc2ltaWxhciBsYXRl bnQgQlVHcyBvbiBBUk0gYm9hcmRzIHRoYXQgbXkgcGF0Y2gKPj4gZGlzY292ZXJlZCB3aGVyZSBz cGVjaWFsIFJBTSByZWdpb25zIGRpZCBub3QgZ2V0IG1hcmtlZCBhcyByZXNlcnZlZAo+PiB2aWEg dGhlIGRldmljZSB0cmVlIHByb3Blcmx5Lgo+Pgo+PiBOb3csIHRoaXMgaXMganVzdCBhIHdpbGQg Z3Vlc3MgOikgQ2FuIHlvdSBkdW1wIHRoZSBwYWdlIHdoZW4gbWFwcGluZwo+PiAoYmVmb3JlIFBh Z2VSZXNlcnZlZCgpKSBhbmQgd2hlbiB1bm1hcHBpbmcsIHRvIHNlZSB3aGF0IHRoZSBzdGF0ZSBv Zgo+PiB0aGF0IG1lbW1hcCBpcz8KPiAKPiBUaGFuayB5b3UgRGF2aWQgZm9yIHRoZSBleHBsYW5h dGlvbiBhbmQgeW91ciBoZWxwIG9uIHRoaXMsCj4gCj4gZHVtcF9wYWdlKCkgYmVmb3JlIFBhZ2VS ZXNlcnZlZCBhbmQgYmVmb3JlIGttYXAoKSBpbiB0aGUgYWJvdmUgcGF0Y2g6Cj4gCj4gW8KgwqDC oCAxLjExNjQ4MF0gQUNQSTogQ29yZSByZXZpc2lvbiAyMDIwMTExMwo+IFvCoMKgwqAgMS4xMTc2 MjhdIFhYWCBhY3BpX21hcDogYWJvdXQgdG8gY2FsbCBrbWFwKCkuLi4KPiBbwqDCoMKgIDEuMTE4 NTYxXSBwYWdlOmZmZmZlYTAwMDJmOTE0YzAgcmVmY291bnQ6MCBtYXBjb3VudDowCj4gbWFwcGlu ZzowMDAwMDAwMDAwMDAwMDAwIGluZGV4OjB4MCBwZm46MHhiZTQ1Mwo+IFvCoMKgwqAgMS4xMjAz ODFdIGZsYWdzOiAweGZmZmZmYzAwMDAwMDAoKQo+IFvCoMKgwqAgMS4xMjExMTZdIHJhdzogMDAw ZmZmZmZjMDAwMDAwMCBmZmZmZWEwMDAyZjkxNGM4IGZmZmZlYTAwMDJmOTE0YzgKPiAwMDAwMDAw MDAwMDAwMDAwCj4gW8KgwqDCoCAxLjEyMjYzOF0gcmF3OiAwMDAwMDAwMDAwMDAwMDAwIDAwMDAw MDAwMDAwMDAwMDAgMDAwMDAwMDBmZmZmZmZmZgo+IDAwMDAwMDAwMDAwMDAwMDAKPiBbwqDCoMKg IDEuMTI0MTQ2XSBwYWdlIGR1bXBlZCBiZWNhdXNlOiBhY3BpX21hcCBwcmUgU2V0UGFnZVJlc2Vy dmVkCj4gCj4gSSBhbHNvIGFkZGVkIGR1bXBfcGFnZSgpIGJlZm9yZSB1bm1hcHBpbmcsIGJ1dCBp dCBpcyBub3QgaGl0LiBUaGUKPiBmb2xsb3dpbmcgZm9yIHRoZSBzYW1lIHBmbiBub3cgc2hvd3Mg dXAgSSBiZWxpZXZlIGFzIGEgcmVzdWx0IG9mIHNldHRpbmcKPiBQYWdlUmVzZXJ2ZWQ6Cj4gCj4g W8KgwqAgMjguMDk4MjA4XSBCVUc6QmFkIHBhZ2Ugc3RhdGUgaW4gcHJvY2VzcyBtbyBkcHJvYmXC oCBwZm46YmU0NTMKPiBbwqDCoCAyOC4wOTgzOTRdIHBhZ2U6ZmZmZmVhMDAwMmY5MTRjMCByZWZj b3VudDowIG1hcGNvdW50OjAKPiBtYXBwaW5nOjAwMDAwMDAwMDAwMDAwMDAgaW5kZXg6MHgxIHBm bjoweGJlNDUzCj4gW8KgwqAgMjguMDk4Mzk0XSBmbGFnczogMHhmZmZmZmMwMDAxMDAwKHJlc2Vy dmVkKQo+IFvCoMKgIDI4LjA5ODM5NF0gcmF3OiAwMDBmZmZmZmMwMDAxMDAwIGRlYWQwMDAwMDAw MDAxMDAgZGVhZDAwMDAwMDAwMDEyMgo+IDAwMDAwMDAwMDAwMDAwMDAKPiBbwqDCoCAyOC4wOTgz OTRdIHJhdzogMDAwMDAwMDAwMDAwMDAwMSAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwZmZmZmZm ZmYKPiAwMDAwMDAwMDAwMDAwMDAwCj4gW8KgwqAgMjguMDk4Mzk0XSBwYWdlIGR1bXBlZCBiZWNh dXNlOiBQQUdFX0ZMQUdTX0NIRUNLX0FUX1BSRVAgZmxhZyhzKSBzZXQKPiBbwqDCoCAyOC4wOTgz OTRdIHBhZ2Vfb3duZXIgaW5mbyBpcyBub3QgcHJlc2VudCAobmV2ZXIgc2V0PykKPiBbwqDCoCAy OC4wOTgzOTRdIE1vZHVsZXMgbGlua2VkIGluOgo+IFvCoMKgIDI4LjA5ODM5NF0gQ1BVOiAyIFBJ RDogMjA0IENvbW06IG1vZHByb2JlIE5vdCB0YWludGVkIDUuMTEuMC0zZGJkNWUzICM2Ngo+IFvC oMKgIDI4LjA5ODM5NF0gSGFyZHdhcmUgbmFtZTogUUVNVSBTdGFuZGFyZCBQQyAoaTQ0MEZYICsg UElJWCwgMTk5NiksCj4gQklPUyAwLjAuMCAwMi8wNi8yMDE1Cj4gW8KgwqAgMjguMDk4Mzk0XSBD YWxsIFRyYWNlOgo+IFvCoMKgIDI4LjA5ODM5NF3CoCBkdW1wX3N0YWNrKzB4ZGIvMHgxMjAKPiBb wqDCoCAyOC4wOTgzOTRdwqAgYmFkX3BhZ2UuY29sZC4xMDgrMHhjNi8weGNiCj4gW8KgwqAgMjgu MDk4Mzk0XcKgIGNoZWNrX25ld19wYWdlX2JhZCsweDQ3LzB4YTAKPiBbwqDCoCAyOC4wOTgzOTRd wqAgZ2V0X3BhZ2VfZnJvbV9mcmVlbGlzdCsweDMwY2QvMHg1NzMwCj4gW8KgwqAgMjguMDk4Mzk0 XcKgID8gX19pc29sYXRlX2ZyZWVfcGFnZSsweDRmMC8weDRmMAo+IFvCoMKgIDI4LjA5ODM5NF3C oCA/IGluaXRfb2JqZWN0KzB4N2UvMHg5MAo+IFvCoMKgIDI4LjA5ODM5NF3CoCBfX2FsbG9jX3Bh Z2VzX25vZGVtYXNrKzB4MmQ4LzB4NjUwCj4gW8KgwqAgMjguMDk4Mzk0XcKgID8gd3JpdGVfY29t cF9kYXRhKzB4MmYvMHg5MAo+IFvCoMKgIDI4LjA5ODM5NF3CoCA/IF9fYWxsb2NfcGFnZXNfc2xv d3BhdGguY29uc3Rwcm9wLjEwMysweDIxMTAvMHgyMTEwCj4gW8KgwqAgMjguMDk4Mzk0XcKgID8g X19zYW5pdGl6ZXJfY292X3RyYWNlX3BjKzB4MjEvMHg1MAo+IFvCoMKgIDI4LjA5ODM5NF3CoCBh bGxvY19wYWdlc192bWErMHhlMi8weDU2MAo+IFvCoMKgIDI4LjA5ODM5NF3CoCBkb19mYXVsdCsw eDE5NC8weDEyYzAKPiBbwqDCoCAyOC4wOTgzOTRdwqAgPyB3cml0ZV9jb21wX2RhdGErMHgyZi8w eDkwCj4gW8KgwqAgMjguMDk4Mzk0XcKgIF9faGFuZGxlX21tX2ZhdWx0KzB4MTY1MC8weDI2YzAK PiBbwqDCoCAyOC4wOTgzOTRdwqAgPyBjb3B5X3BhZ2VfcmFuZ2UrMHgxMzUwLzB4MTM1MAo+IFvC oMKgIDI4LjA5ODM5NF3CoCA/IHdyaXRlX2NvbXBfZGF0YSsweDJmLzB4OTAKPiBbwqDCoCAyOC4w OTgzOTRdwqAgPyB3cml0ZV9jb21wX2RhdGErMHgyZi8weDkwCj4gW8KgwqAgMjguMDk4Mzk0XcKg IGhhbmRsZV9tbV9mYXVsdCsweDFmOS8weDgxMAo+IFvCoMKgIDI4LjA5ODM5NF3CoCA/IHdyaXRl X2NvbXBfZGF0YSsweDJmLzB4OTAKPiBbwqDCoCAyOC4wOTgzOTRdwqAgZG9fdXNlcl9hZGRyX2Zh dWx0KzB4NmY3LzB4Y2EwCj4gW8KgwqAgMjguMDk4Mzk0XcKgIGV4Y19wYWdlX2ZhdWx0KzB4YWYv MHgxYTAKPiBbwqDCoCAyOC4wOTgzOTRdwqAgYXNtX2V4Y19wYWdlX2ZhdWx0KzB4MWUvMHgzMAo+ IFvCoMKgIDI4LjA5ODM5NF0gUklQOiAwMDEwOl9fY2xlYXJfdXNlcisweDMwLzB4NjAKCkkgdGhp bmsgdGhlIFBBR0VfRkxBR1NfQ0hFQ0tfQVRfUFJFUCBjaGVjayBpbiB0aGlzIGluc3RhbmNlIG1l YW5zIHRoYXQgCnNvbWVvbmUgaXMgdHJ5aW5nIHRvIGFsbG9jYXRlIHRoYXQgcGFnZSB3aXRoIHRo ZSBQR19yZXNlcnZlZCBiaXQgc2V0LiAKVGhpcyBtZWFucyB0aGF0IHRoZSBwYWdlIGFjdHVhbGx5 IHdhcyBleHBvc2VkIHRvIHRoZSBidWRkeS4KCkhvd2V2ZXIsIHdoZW4geW91IFNldFBhZ2VSZXNl cnZlZCgpLCBJIGRvbid0IHRoaW5rIHRoYXQgUEdfYnVkZHkgaXMgc2V0IAphbmQgdGhlIHJlZmNv dW50IGlzIDAuIFRoYXQgY291bGQgaW5kaWNhdGUgdGhhdCB0aGUgcGFnZSBpcyBvbiB0aGUgYnVk ZHkgClBDUCBsaXN0LiBDb3VsZCBiZSB0aGF0IGl0IGlzIGdldHRpbmcgcmV1c2VkIGEgY291cGxl IG9mIHRpbWVzLgoKVGhlIFBGTiAweGJlNDUzIGxvb2tzIGEgbGl0dGxlIHN0cmFuZ2UsIHRob3Vn aC4gRG8gd2UgZXhwZWN0IEFDUEkgdGFibGVzIApjbG9zZSB0byAzIEdpQiA/IE5vIGlkZWEuIENv dWxkIGl0IGJlIHRoYXQgeW91IGFyZSB0cnlpbmcgdG8gbWFwIGEgd3JvbmcgCnRhYmxlPyBKdXN0 IGEgZ3Vlc3MuCgo+IAo+IFdoYXQgd291bGQgYmXCoCB0aGUgY29ycmVjdCB3YXkgdG8gcmVzZXJ2 ZSB0aGUgcGFnZSBzbyB0aGF0IHRoZSBhYm92ZQo+IHdvdWxkIG5vdCBiZSBoaXQ/CgpJIHdvdWxk IGhhdmUgYXNzdW1lZCB0aGF0IGlmIHRoaXMgaXMgYSBiaW5hcnkgYmxvYiwgdGhhdCBzb21lb25l ICh3aGljaCAKSSB0aGluayB3b3VsZCBiZSBhY3BpIGNvZGUpIHJlc2VydmVkIHZpYSBtZW1ibG9j a19yZXNlcnZlKCkgZWFybHkgZHVyaW5nIApib290LgoKRS5nLiwgc2VlIGRyaXZlcnMvYWNwaS90 YWJsZXMuYzphY3BpX3RhYmxlX3VwZ3JhZGUoKS0+bWVtYmxvY2tfcmVzZXJ2ZSgpLgoKLS0gClRo YW5rcywKCkRhdmlkIC8gZGhpbGRlbmIKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0t a2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFp bG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==