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=-13.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,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 EBDE9C5519F for ; Wed, 18 Nov 2020 15:44:48 +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 4ECAA2475E for ; Wed, 18 Nov 2020 15:44:48 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="LjUHRoCf"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=google.com header.i=@google.com header.b="o2elT4rI" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4ECAA2475E Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.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-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=CP6BbtIE6GA0Ir8yCOIZhLTdk/eQRItd5BF4Vo0t3ZM=; b=LjUHRoCfQdFc5NDAIKIgOfLMw 3lH/2DlHfWZpU4C50tBaQUwdl6Uj9LXPuWWG8xkk5Rxt0Ln44irUlpQvwxNv1+WO56Ps9iH5fYFpV JXf5drrGEpaYBNd5u5aNlZZ0qvc+eGjfY4Qs6KRaPn3/mPgBgfY1jg32RFPpjK+Ok0xGhSW6RfSns xLfMUGYWJhinCjZy6WHPoZw9b/S7/KSBbJkui7KS1fA4XoO4q+sI53FCO7UkS+GKfZUcM7+4gOR2g h0JoNRJ0jTa1ARZCKnwkUaPVYxvK+ssokTXh+3no4ziRb3UC8JI3AJ/8fTyeD7g85ddWPrHkFucby y/cRhIDTQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kfPcM-000668-8s; Wed, 18 Nov 2020 15:43:34 +0000 Received: from mail-qv1-xf42.google.com ([2607:f8b0:4864:20::f42]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kfPcI-00064V-Pk for linux-arm-kernel@lists.infradead.org; Wed, 18 Nov 2020 15:43:32 +0000 Received: by mail-qv1-xf42.google.com with SMTP id a15so1221459qvk.5 for ; Wed, 18 Nov 2020 07:43:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=ii8uMwZ11exGNZ0QuXQOuB3dAaW5Ak4GBCBwnjIahGo=; b=o2elT4rINyVBV6BS5aB0ifPHqNX9mYDaobsn69M6IaY1usexvUYK9bF6WDGHa47c2w HDuxyZnJdgFGCf45cUPY0MSima5dqX0FOH97IGhewfnyI2G3/6HKsVx4AkHi6WAtXYX1 p9YUAEKIv/LWnOlu+IgcKCGOg6SYSNNoVCJ4BWDPTa4moU/RaVFPSXraHeP3bZyh1V// R1GJwaDbUX2LiwOOWLuDc3Q/F5M82/WgorGO12TnPxti1RVItz6+ZNKcT7kcrmQQMNCF RX0ygEcIF6fGaNWJzvA6uSaj4RLdNmm+TLM/jcc4c0ZAjLsau4tijF9aaHjHl+0b98Io 5lTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=ii8uMwZ11exGNZ0QuXQOuB3dAaW5Ak4GBCBwnjIahGo=; b=gPvtthtNSy73GoeYTOQShfR+TUlz8+8ymztCn7kg5x7npwBeitlhoIbmYf8y6T53fd sYisA7Zo+qgkVH4zfbjWwfB01UzsjR5JUo4DIwvWzg10zOpiYQDS9JRYKDO6roRa3rUy I2Evv6jd7KsdKgf0GyveCx98hYVsmp5WdCjzMxVZT4g6vgW06Z4sv3+yvXZoK55a3nHk Ahubm1wwQFVjrAQPPPOoxFZzn63/V5Fq4nnVB23fAhma0xY74exJY4c4v/GoaetTp/o0 Ay/LAgMpU0PjStUy9bNS+1QNXdIP4Dv08RR23YqHPaCsz+W1ldmk9Rk5NA28ASB0wMxT 5XqA== X-Gm-Message-State: AOAM530rI+vS6WW0oje7wqpCEsUbn+QgFUUMaEzwL9OvmxtpT0Ks9mm2 2EmZ+wOOC5PVPRKUNFdUH8r7RunZWZg4fCIKzbQA4w== X-Google-Smtp-Source: ABdhPJxLmAnSOWQI2Qf7LFLVct0WnciQlBPqR78aT5f710dElggYdwcvRDEM1AAuM9lbZrNxAZg3O4Ws6bHAYu910jk= X-Received: by 2002:a0c:9e53:: with SMTP id z19mr5380322qve.23.1605714207999; Wed, 18 Nov 2020 07:43:27 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Alexander Potapenko Date: Wed, 18 Nov 2020 16:43:16 +0100 Message-ID: Subject: Re: [PATCH mm v10 41/42] kasan: add documentation for hardware tag-based mode To: Andrey Konovalov X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201118_104330_969849_6FDEE106 X-CRM114-Status: GOOD ( 32.57 ) 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 , Catalin Marinas , Kevin Brodsky , Will Deacon , Branislav Rankov , kasan-dev , LKML , Linux Memory Management List , Evgenii Stepanov , Andrey Ryabinin , Andrew Morton , Vincenzo Frascino , Dmitry Vyukov Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gRnJpLCBOb3YgMTMsIDIwMjAgYXQgMTE6MTcgUE0gQW5kcmV5IEtvbm92YWxvdiA8YW5kcmV5 a252bEBnb29nbGUuY29tPiB3cm90ZToKPgo+IEFkZCBkb2N1bWVudGF0aW9uIGZvciBoYXJkd2Fy ZSB0YWctYmFzZWQgS0FTQU4gbW9kZSBhbmQgYWxzbyBhZGQgc29tZQo+IGNsYXJpZmljYXRpb25z IGZvciBzb2Z0d2FyZSB0YWctYmFzZWQgbW9kZS4KPgo+IFNpZ25lZC1vZmYtYnk6IEFuZHJleSBL b25vdmFsb3YgPGFuZHJleWtudmxAZ29vZ2xlLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBWaW5jZW56 byBGcmFzY2lubyA8dmluY2Vuem8uZnJhc2Npbm9AYXJtLmNvbT4KPiBSZXZpZXdlZC1ieTogTWFy Y28gRWx2ZXIgPGVsdmVyQGdvb2dsZS5jb20+ClJldmlld2VkLWJ5OiBBbGV4YW5kZXIgUG90YXBl bmtvIDxnbGlkZXJAZ29vZ2xlLmNvbT4KCj4gLS0tCj4gQ2hhbmdlLUlkOiBJYjQ2Y2I0NDRjZmRl ZTQ0MDU0NjI4OTQwYTgyZjUxMzllMTBkMDI1OAo+IC0tLQo+ICBEb2N1bWVudGF0aW9uL2Rldi10 b29scy9rYXNhbi5yc3QgfCA4MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCj4gIDEg ZmlsZSBjaGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKPgo+IGRpZmYg LS1naXQgYS9Eb2N1bWVudGF0aW9uL2Rldi10b29scy9rYXNhbi5yc3QgYi9Eb2N1bWVudGF0aW9u L2Rldi10b29scy9rYXNhbi5yc3QKPiBpbmRleCAyZDU1ZDc4ODk3MWMuLmZmYmFlOGNlNTc0OCAx MDA2NDQKPiAtLS0gYS9Eb2N1bWVudGF0aW9uL2Rldi10b29scy9rYXNhbi5yc3QKPiArKysgYi9E b2N1bWVudGF0aW9uL2Rldi10b29scy9rYXNhbi5yc3QKPiBAQCAtNSwxMiArNSwxNCBAQCBPdmVy dmlldwo+ICAtLS0tLS0tLQo+Cj4gIEtlcm5lbEFkZHJlc3NTQU5pdGl6ZXIgKEtBU0FOKSBpcyBh IGR5bmFtaWMgbWVtb3J5IGVycm9yIGRldGVjdG9yIGRlc2lnbmVkIHRvCj4gLWZpbmQgb3V0LW9m LWJvdW5kIGFuZCB1c2UtYWZ0ZXItZnJlZSBidWdzLiBLQVNBTiBoYXMgdHdvIG1vZGVzOiBnZW5l cmljIEtBU0FOCj4gLShzaW1pbGFyIHRvIHVzZXJzcGFjZSBBU2FuKSBhbmQgc29mdHdhcmUgdGFn LWJhc2VkIEtBU0FOIChzaW1pbGFyIHRvIHVzZXJzcGFjZQo+IC1IV0FTYW4pLgo+ICtmaW5kIG91 dC1vZi1ib3VuZCBhbmQgdXNlLWFmdGVyLWZyZWUgYnVncy4gS0FTQU4gaGFzIHRocmVlIG1vZGVz Ogo+ICsxLiBnZW5lcmljIEtBU0FOIChzaW1pbGFyIHRvIHVzZXJzcGFjZSBBU2FuKSwKPiArMi4g c29mdHdhcmUgdGFnLWJhc2VkIEtBU0FOIChzaW1pbGFyIHRvIHVzZXJzcGFjZSBIV0FTYW4pLAo+ ICszLiBoYXJkd2FyZSB0YWctYmFzZWQgS0FTQU4gKGJhc2VkIG9uIGhhcmR3YXJlIG1lbW9yeSB0 YWdnaW5nKS4KPgo+IC1LQVNBTiB1c2VzIGNvbXBpbGUtdGltZSBpbnN0cnVtZW50YXRpb24gdG8g aW5zZXJ0IHZhbGlkaXR5IGNoZWNrcyBiZWZvcmUgZXZlcnkKPiAtbWVtb3J5IGFjY2VzcywgYW5k IHRoZXJlZm9yZSByZXF1aXJlcyBhIGNvbXBpbGVyIHZlcnNpb24gdGhhdCBzdXBwb3J0cyB0aGF0 Lgo+ICtTb2Z0d2FyZSBLQVNBTiBtb2RlcyAoMSBhbmQgMikgdXNlIGNvbXBpbGUtdGltZSBpbnN0 cnVtZW50YXRpb24gdG8gaW5zZXJ0Cj4gK3ZhbGlkaXR5IGNoZWNrcyBiZWZvcmUgZXZlcnkgbWVt b3J5IGFjY2VzcywgYW5kIHRoZXJlZm9yZSByZXF1aXJlIGEgY29tcGlsZXIKPiArdmVyc2lvbiB0 aGF0IHN1cHBvcnRzIHRoYXQuCj4KPiAgR2VuZXJpYyBLQVNBTiBpcyBzdXBwb3J0ZWQgaW4gYm90 aCBHQ0MgYW5kIENsYW5nLiBXaXRoIEdDQyBpdCByZXF1aXJlcyB2ZXJzaW9uCj4gIDguMy4wIG9y IGxhdGVyLiBBbnkgc3VwcG9ydGVkIENsYW5nIHZlcnNpb24gaXMgY29tcGF0aWJsZSwgYnV0IGRl dGVjdGlvbiBvZgo+IEBAIC0xOSw3ICsyMSw3IEBAIG91dC1vZi1ib3VuZHMgYWNjZXNzZXMgZm9y IGdsb2JhbCB2YXJpYWJsZXMgaXMgb25seSBzdXBwb3J0ZWQgc2luY2UgQ2xhbmcgMTEuCj4gIFRh Zy1iYXNlZCBLQVNBTiBpcyBvbmx5IHN1cHBvcnRlZCBpbiBDbGFuZy4KPgo+ICBDdXJyZW50bHkg Z2VuZXJpYyBLQVNBTiBpcyBzdXBwb3J0ZWQgZm9yIHRoZSB4ODZfNjQsIGFybSwgYXJtNjQsIHh0 ZW5zYSwgczM5MAo+IC1hbmQgcmlzY3YgYXJjaGl0ZWN0dXJlcywgYW5kIHRhZy1iYXNlZCBLQVNB TiBpcyBzdXBwb3J0ZWQgb25seSBmb3IgYXJtNjQuCj4gK2FuZCByaXNjdiBhcmNoaXRlY3R1cmVz LCBhbmQgdGFnLWJhc2VkIEtBU0FOIG1vZGVzIGFyZSBzdXBwb3J0ZWQgb25seSBmb3IgYXJtNjQu Cj4KPiAgVXNhZ2UKPiAgLS0tLS0KPiBAQCAtMjgsMTQgKzMwLDE2IEBAIFRvIGVuYWJsZSBLQVNB TiBjb25maWd1cmUga2VybmVsIHdpdGg6Ogo+Cj4gICAgICAgICAgIENPTkZJR19LQVNBTiA9IHkK Pgo+IC1hbmQgY2hvb3NlIGJldHdlZW4gQ09ORklHX0tBU0FOX0dFTkVSSUMgKHRvIGVuYWJsZSBn ZW5lcmljIEtBU0FOKSBhbmQKPiAtQ09ORklHX0tBU0FOX1NXX1RBR1MgKHRvIGVuYWJsZSBzb2Z0 d2FyZSB0YWctYmFzZWQgS0FTQU4pLgo+ICthbmQgY2hvb3NlIGJldHdlZW4gQ09ORklHX0tBU0FO X0dFTkVSSUMgKHRvIGVuYWJsZSBnZW5lcmljIEtBU0FOKSwKPiArQ09ORklHX0tBU0FOX1NXX1RB R1MgKHRvIGVuYWJsZSBzb2Z0d2FyZSB0YWctYmFzZWQgS0FTQU4pLCBhbmQKPiArQ09ORklHX0tB U0FOX0hXX1RBR1MgKHRvIGVuYWJsZSBoYXJkd2FyZSB0YWctYmFzZWQgS0FTQU4pLgo+Cj4gLVlv dSBhbHNvIG5lZWQgdG8gY2hvb3NlIGJldHdlZW4gQ09ORklHX0tBU0FOX09VVExJTkUgYW5kIENP TkZJR19LQVNBTl9JTkxJTkUuCj4gLU91dGxpbmUgYW5kIGlubGluZSBhcmUgY29tcGlsZXIgaW5z dHJ1bWVudGF0aW9uIHR5cGVzLiBUaGUgZm9ybWVyIHByb2R1Y2VzCj4gLXNtYWxsZXIgYmluYXJ5 IHdoaWxlIHRoZSBsYXR0ZXIgaXMgMS4xIC0gMiB0aW1lcyBmYXN0ZXIuCj4gK0ZvciBzb2Z0d2Fy ZSBtb2RlcywgeW91IGFsc28gbmVlZCB0byBjaG9vc2UgYmV0d2VlbiBDT05GSUdfS0FTQU5fT1VU TElORSBhbmQKPiArQ09ORklHX0tBU0FOX0lOTElORS4gT3V0bGluZSBhbmQgaW5saW5lIGFyZSBj b21waWxlciBpbnN0cnVtZW50YXRpb24gdHlwZXMuCj4gK1RoZSBmb3JtZXIgcHJvZHVjZXMgc21h bGxlciBiaW5hcnkgd2hpbGUgdGhlIGxhdHRlciBpcyAxLjEgLSAyIHRpbWVzIGZhc3Rlci4KPgo+ IC1Cb3RoIEtBU0FOIG1vZGVzIHdvcmsgd2l0aCBib3RoIFNMVUIgYW5kIFNMQUIgbWVtb3J5IGFs bG9jYXRvcnMuCj4gK0JvdGggc29mdHdhcmUgS0FTQU4gbW9kZXMgd29yayB3aXRoIGJvdGggU0xV QiBhbmQgU0xBQiBtZW1vcnkgYWxsb2NhdG9ycywKPiAraGFyZHdhcmUgdGFnLWJhc2VkIEtBU0FO IGN1cnJlbnRseSBvbmx5IHN1cHBvcnQgU0xVQi4KPiAgRm9yIGJldHRlciBidWcgZGV0ZWN0aW9u IGFuZCBuaWNlciByZXBvcnRpbmcsIGVuYWJsZSBDT05GSUdfU1RBQ0tUUkFDRS4KPgo+ICBUbyBh dWdtZW50IHJlcG9ydHMgd2l0aCBsYXN0IGFsbG9jYXRpb24gYW5kIGZyZWVpbmcgc3RhY2sgb2Yg dGhlIHBoeXNpY2FsIHBhZ2UsCj4gQEAgLTE5NiwxNyArMjAwLDI0IEBAIGFuZCB0aGUgc2Vjb25k IHRvIGxhc3QuCj4gIFNvZnR3YXJlIHRhZy1iYXNlZCBLQVNBTgo+ICB+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KPgo+IC1UYWctYmFzZWQgS0FTQU4gdXNlcyB0aGUgVG9wIEJ5dGUgSWdub3JlIChU QkkpIGZlYXR1cmUgb2YgbW9kZXJuIGFybTY0IENQVXMgdG8KPiAtc3RvcmUgYSBwb2ludGVyIHRh ZyBpbiB0aGUgdG9wIGJ5dGUgb2Yga2VybmVsIHBvaW50ZXJzLiBMaWtlIGdlbmVyaWMgS0FTQU4g aXQKPiAtdXNlcyBzaGFkb3cgbWVtb3J5IHRvIHN0b3JlIG1lbW9yeSB0YWdzIGFzc29jaWF0ZWQg d2l0aCBlYWNoIDE2LWJ5dGUgbWVtb3J5Cj4gK1NvZnR3YXJlIHRhZy1iYXNlZCBLQVNBTiByZXF1 aXJlcyBzb2Z0d2FyZSBtZW1vcnkgdGFnZ2luZyBzdXBwb3J0IGluIHRoZSBmb3JtCj4gK29mIEhX QVNhbi1saWtlIGNvbXBpbGVyIGluc3RydW1lbnRhdGlvbiAoc2VlIEhXQVNhbiBkb2N1bWVudGF0 aW9uIGZvciBkZXRhaWxzKS4KPiArCj4gK1NvZnR3YXJlIHRhZy1iYXNlZCBLQVNBTiBpcyBjdXJy ZW50bHkgb25seSBpbXBsZW1lbnRlZCBmb3IgYXJtNjQgYXJjaGl0ZWN0dXJlLgo+ICsKPiArU29m dHdhcmUgdGFnLWJhc2VkIEtBU0FOIHVzZXMgdGhlIFRvcCBCeXRlIElnbm9yZSAoVEJJKSBmZWF0 dXJlIG9mIGFybTY0IENQVXMKPiArdG8gc3RvcmUgYSBwb2ludGVyIHRhZyBpbiB0aGUgdG9wIGJ5 dGUgb2Yga2VybmVsIHBvaW50ZXJzLiBMaWtlIGdlbmVyaWMgS0FTQU4KPiAraXQgdXNlcyBzaGFk b3cgbWVtb3J5IHRvIHN0b3JlIG1lbW9yeSB0YWdzIGFzc29jaWF0ZWQgd2l0aCBlYWNoIDE2LWJ5 dGUgbWVtb3J5Cj4gIGNlbGwgKHRoZXJlZm9yZSBpdCBkZWRpY2F0ZXMgMS8xNnRoIG9mIHRoZSBr ZXJuZWwgbWVtb3J5IGZvciBzaGFkb3cgbWVtb3J5KS4KPgo+IC1PbiBlYWNoIG1lbW9yeSBhbGxv Y2F0aW9uIHRhZy1iYXNlZCBLQVNBTiBnZW5lcmF0ZXMgYSByYW5kb20gdGFnLCB0YWdzIHRoZQo+ IC1hbGxvY2F0ZWQgbWVtb3J5IHdpdGggdGhpcyB0YWcsIGFuZCBlbWJlZHMgdGhpcyB0YWcgaW50 byB0aGUgcmV0dXJuZWQgcG9pbnRlci4KPiArT24gZWFjaCBtZW1vcnkgYWxsb2NhdGlvbiBzb2Z0 d2FyZSB0YWctYmFzZWQgS0FTQU4gZ2VuZXJhdGVzIGEgcmFuZG9tIHRhZywgdGFncwo+ICt0aGUg YWxsb2NhdGVkIG1lbW9yeSB3aXRoIHRoaXMgdGFnLCBhbmQgZW1iZWRzIHRoaXMgdGFnIGludG8g dGhlIHJldHVybmVkCj4gK3BvaW50ZXIuCj4gKwo+ICBTb2Z0d2FyZSB0YWctYmFzZWQgS0FTQU4g dXNlcyBjb21waWxlLXRpbWUgaW5zdHJ1bWVudGF0aW9uIHRvIGluc2VydCBjaGVja3MKPiAgYmVm b3JlIGVhY2ggbWVtb3J5IGFjY2Vzcy4gVGhlc2UgY2hlY2tzIG1ha2Ugc3VyZSB0aGF0IHRhZyBv ZiB0aGUgbWVtb3J5IHRoYXQKPiAgaXMgYmVpbmcgYWNjZXNzZWQgaXMgZXF1YWwgdG8gdGFnIG9m IHRoZSBwb2ludGVyIHRoYXQgaXMgdXNlZCB0byBhY2Nlc3MgdGhpcwo+IC1tZW1vcnkuIEluIGNh c2Ugb2YgYSB0YWcgbWlzbWF0Y2ggdGFnLWJhc2VkIEtBU0FOIHByaW50cyBhIGJ1ZyByZXBvcnQu Cj4gK21lbW9yeS4gSW4gY2FzZSBvZiBhIHRhZyBtaXNtYXRjaCBzb2Z0d2FyZSB0YWctYmFzZWQg S0FTQU4gcHJpbnRzIGEgYnVnIHJlcG9ydC4KPgo+ICBTb2Z0d2FyZSB0YWctYmFzZWQgS0FTQU4g YWxzbyBoYXMgdHdvIGluc3RydW1lbnRhdGlvbiBtb2RlcyAob3V0bGluZSwgdGhhdAo+ICBlbWl0 cyBjYWxsYmFja3MgdG8gY2hlY2sgbWVtb3J5IGFjY2Vzc2VzOyBhbmQgaW5saW5lLCB0aGF0IHBl cmZvcm1zIHRoZSBzaGFkb3cKPiBAQCAtMjE1LDkgKzIyNiwzNiBAQCBzaW1wbHkgcHJpbnRlZCBm cm9tIHRoZSBmdW5jdGlvbiB0aGF0IHBlcmZvcm1zIHRoZSBhY2Nlc3MgY2hlY2suIFdpdGggaW5s aW5lCj4gIGluc3RydW1lbnRhdGlvbiBhIGJyayBpbnN0cnVjdGlvbiBpcyBlbWl0dGVkIGJ5IHRo ZSBjb21waWxlciwgYW5kIGEgZGVkaWNhdGVkCj4gIGJyayBoYW5kbGVyIGlzIHVzZWQgdG8gcHJp bnQgYnVnIHJlcG9ydHMuCj4KPiAtQSBwb3RlbnRpYWwgZXhwYW5zaW9uIG9mIHRoaXMgbW9kZSBp cyBhIGhhcmR3YXJlIHRhZy1iYXNlZCBtb2RlLCB3aGljaCB3b3VsZAo+IC11c2UgaGFyZHdhcmUg bWVtb3J5IHRhZ2dpbmcgc3VwcG9ydCBpbnN0ZWFkIG9mIGNvbXBpbGVyIGluc3RydW1lbnRhdGlv biBhbmQKPiAtbWFudWFsIHNoYWRvdyBtZW1vcnkgbWFuaXB1bGF0aW9uLgo+ICtTb2Z0d2FyZSB0 YWctYmFzZWQgS0FTQU4gdXNlcyAweEZGIGFzIGEgbWF0Y2gtYWxsIHBvaW50ZXIgdGFnIChhY2Nl c3NlcyB0aHJvdWdoCj4gK3BvaW50ZXJzIHdpdGggMHhGRiBwb2ludGVyIHRhZyBhcmVuJ3QgY2hl Y2tlZCkuIFRoZSB2YWx1ZSAweEZFIGlzIGN1cnJlbnRseQo+ICtyZXNlcnZlZCB0byB0YWcgZnJl ZWQgbWVtb3J5IHJlZ2lvbnMuCj4gKwo+ICtTb2Z0d2FyZSB0YWctYmFzZWQgS0FTQU4gY3VycmVu dGx5IG9ubHkgc3VwcG9ydHMgdGFnZ2luZyBvZgo+ICtrbWVtX2NhY2hlX2FsbG9jL2ttYWxsb2Mg YW5kIHBhZ2VfYWxsb2MgbWVtb3J5Lgo+ICsKPiArSGFyZHdhcmUgdGFnLWJhc2VkIEtBU0FOCj4g K35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgo+ICsKPiArSGFyZHdhcmUgdGFnLWJhc2VkIEtBU0FO IGlzIHNpbWlsYXIgdG8gdGhlIHNvZnR3YXJlIG1vZGUgaW4gY29uY2VwdCwgYnV0IHVzZXMKPiAr aGFyZHdhcmUgbWVtb3J5IHRhZ2dpbmcgc3VwcG9ydCBpbnN0ZWFkIG9mIGNvbXBpbGVyIGluc3Ry dW1lbnRhdGlvbiBhbmQKPiArc2hhZG93IG1lbW9yeS4KPiArCj4gK0hhcmR3YXJlIHRhZy1iYXNl ZCBLQVNBTiBpcyBjdXJyZW50bHkgb25seSBpbXBsZW1lbnRlZCBmb3IgYXJtNjQgYXJjaGl0ZWN0 dXJlCj4gK2FuZCBiYXNlZCBvbiBib3RoIGFybTY0IE1lbW9yeSBUYWdnaW5nIEV4dGVuc2lvbiAo TVRFKSBpbnRyb2R1Y2VkIGluIEFSTXY4LjUKPiArSW5zdHJ1Y3Rpb24gU2V0IEFyY2hpdGVjdHVy ZSwgYW5kIFRvcCBCeXRlIElnbm9yZSAoVEJJKS4KPiArCj4gK1NwZWNpYWwgYXJtNjQgaW5zdHJ1 Y3Rpb25zIGFyZSB1c2VkIHRvIGFzc2lnbiBtZW1vcnkgdGFncyBmb3IgZWFjaCBhbGxvY2F0aW9u Lgo+ICtTYW1lIHRhZ3MgYXJlIGFzc2lnbmVkIHRvIHBvaW50ZXJzIHRvIHRob3NlIGFsbG9jYXRp b25zLiBPbiBldmVyeSBtZW1vcnkKPiArYWNjZXNzLCBoYXJkd2FyZSBtYWtlcyBzdXJlIHRoYXQg dGFnIG9mIHRoZSBtZW1vcnkgdGhhdCBpcyBiZWluZyBhY2Nlc3NlZCBpcwo+ICtlcXVhbCB0byB0 YWcgb2YgdGhlIHBvaW50ZXIgdGhhdCBpcyB1c2VkIHRvIGFjY2VzcyB0aGlzIG1lbW9yeS4gSW4g Y2FzZSBvZiBhCj4gK3RhZyBtaXNtYXRjaCBhIGZhdWx0IGlzIGdlbmVyYXRlZCBhbmQgYSByZXBv cnQgaXMgcHJpbnRlZC4KPiArCj4gK0hhcmR3YXJlIHRhZy1iYXNlZCBLQVNBTiB1c2VzIDB4RkYg YXMgYSBtYXRjaC1hbGwgcG9pbnRlciB0YWcgKGFjY2Vzc2VzIHRocm91Z2gKPiArcG9pbnRlcnMg d2l0aCAweEZGIHBvaW50ZXIgdGFnIGFyZW4ndCBjaGVja2VkKS4gVGhlIHZhbHVlIDB4RkUgaXMg Y3VycmVudGx5Cj4gK3Jlc2VydmVkIHRvIHRhZyBmcmVlZCBtZW1vcnkgcmVnaW9ucy4KPiArCj4g K0hhcmR3YXJlIHRhZy1iYXNlZCBLQVNBTiBjdXJyZW50bHkgb25seSBzdXBwb3J0cyB0YWdnaW5n IG9mCj4gK2ttZW1fY2FjaGVfYWxsb2Mva21hbGxvYyBhbmQgcGFnZV9hbGxvYyBtZW1vcnkuCj4K PiAgV2hhdCBtZW1vcnkgYWNjZXNzZXMgYXJlIHNhbml0aXNlZCBieSBLQVNBTj8KPiAgLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAtLQo+IDIuMjkuMi4yOTku Z2RjMTEyMTgyM2MtZ29vZwo+CgoKLS0gCkFsZXhhbmRlciBQb3RhcGVua28KU29mdHdhcmUgRW5n aW5lZXIKCkdvb2dsZSBHZXJtYW55IEdtYkgKRXJpa2EtTWFubi1TdHJhw59lLCAzMwo4MDYzNiBN w7xuY2hlbgoKR2VzY2jDpGZ0c2bDvGhyZXI6IFBhdWwgTWFuaWNsZSwgSGFsaW1haCBEZUxhaW5l IFByYWRvClJlZ2lzdGVyZ2VyaWNodCB1bmQgLW51bW1lcjogSGFtYnVyZywgSFJCIDg2ODkxClNp dHogZGVyIEdlc2VsbHNjaGFmdDogSGFtYnVyZwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=