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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id AC7DDC77B73 for ; Fri, 26 May 2023 13:57:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1FDEE6B0075; Fri, 26 May 2023 09:57:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 187586B0078; Fri, 26 May 2023 09:57:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 02843900002; Fri, 26 May 2023 09:57:29 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id E4DD86B0075 for ; Fri, 26 May 2023 09:57:29 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id A77B440EEF for ; Fri, 26 May 2023 13:57:29 +0000 (UTC) X-FDA: 80832558618.15.5375405 Received: from smtp-fw-6002.amazon.com (smtp-fw-6002.amazon.com [52.95.49.90]) by imf26.hostedemail.com (Postfix) with ESMTP id 4039B140015 for ; Fri, 26 May 2023 13:57:27 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=amazon.com header.s=amazon201209 header.b="MvRFh8/E"; dmarc=pass (policy=quarantine) header.from=amazon.com; spf=pass (imf26.hostedemail.com: domain of "prvs=5039714da=jgowans@amazon.com" designates 52.95.49.90 as permitted sender) smtp.mailfrom="prvs=5039714da=jgowans@amazon.com" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1685109447; h=from:from:sender: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:dkim-signature; bh=oBqZOBHuiqIEWF5UrD9YR5/Y0jvlkS5A+MMqZPCEAqs=; b=T/P9oTRQ+AtN2U5ftNOoZUn2zovy7w7lAaCbu6b3eiIhZl6LfruaURlzTJcYlCYe64gNma OXXEbLuPC5VXDWlqRooAs/M+WjkQgZwwfNgz2/2gZBHiL+JWKD+7C2fDM90TODsk2IDPg8 8qL8yL1+qepQMdhMQvKk0XOYsFEhYxM= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=amazon.com header.s=amazon201209 header.b="MvRFh8/E"; dmarc=pass (policy=quarantine) header.from=amazon.com; spf=pass (imf26.hostedemail.com: domain of "prvs=5039714da=jgowans@amazon.com" designates 52.95.49.90 as permitted sender) smtp.mailfrom="prvs=5039714da=jgowans@amazon.com" ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1685109447; a=rsa-sha256; cv=none; b=nhsLYVxZuaUygASJhAUIXnaSBCYteQIaGKxBW/C6Y/ZF6+LZcf+zDADbF+kJ11cCTZyIon ELQMZsECvrIfV6XMApY9ln0AzjXMk/ynfJmITY6FscOprk3tvP/VtTi165VTNLMcsnAmj0 iVPH4t0A2LgQaLxfpUB1FvX567sDz6M= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1685109447; x=1716645447; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=oBqZOBHuiqIEWF5UrD9YR5/Y0jvlkS5A+MMqZPCEAqs=; b=MvRFh8/EV9b2cbpToHaeXoH7jYwrhCnEsPCrJIa8rsAt/gl7sO7QJkQR bLXsYNKasNT+c3cBMBENHBIyz7oLk9YGQbhPVmZNigj03ROZYjGWtSF3l S7v+3iCMuMhRevJDCTdxbNwaqg59ittOX/13LkJ9GDqFqYnYWFVPBAzNs U=; X-IronPort-AV: E=Sophos;i="6.00,194,1681171200"; d="scan'208";a="333831818" Received: from iad12-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-pdx-2b-m6i4x-f253a3a3.us-west-2.amazon.com) ([10.43.8.6]) by smtp-border-fw-6002.iad6.amazon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 May 2023 13:57:22 +0000 Received: from EX19MTAUEA001.ant.amazon.com (pdx1-ws-svc-p6-lb9-vlan3.pdx.amazon.com [10.236.137.198]) by email-inbound-relay-pdx-2b-m6i4x-f253a3a3.us-west-2.amazon.com (Postfix) with ESMTPS id 845CE8064D; Fri, 26 May 2023 13:57:20 +0000 (UTC) Received: from EX19D008UEC001.ant.amazon.com (10.252.135.232) by EX19MTAUEA001.ant.amazon.com (10.252.134.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Fri, 26 May 2023 13:57:20 +0000 Received: from EX19D014EUC004.ant.amazon.com (10.252.51.182) by EX19D008UEC001.ant.amazon.com (10.252.135.232) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Fri, 26 May 2023 13:57:19 +0000 Received: from EX19D014EUC004.ant.amazon.com ([fe80::76dd:4020:4ff2:1e41]) by EX19D014EUC004.ant.amazon.com ([fe80::76dd:4020:4ff2:1e41%3]) with mapi id 15.02.1118.026; Fri, 26 May 2023 13:57:18 +0000 From: "Gowans, James" To: "linux-mm@kvack.org" , "anthony.yznaga@oracle.com" , "linux-kernel@vger.kernel.org" CC: "kexec@lists.infradead.org" , "jason.zeng@intel.com" , "keescook@chromium.org" , "lei.l.li@intel.com" , "luto@kernel.org" , "rppt@kernel.org" , "dave.hansen@linux.intel.com" , "steven.sistare@oracle.com" , "Graf (AWS), Alexander" , "akpm@linux-foundation.org" , "mgalaxy@akamai.com" , "mingo@redhat.com" , "fam.zheng@bytedance.com" , "Woodhouse, David" , "tglx@linutronix.de" , "yuleixzhang@tencent.com" , "ebiederm@xmission.com" , "hpa@zytor.com" , "peterz@infradead.org" , "bp@alien8.de" , "x86@kernel.org" Subject: Re: [RFC v3 00/21] Preserved-over-Kexec RAM Thread-Topic: [RFC v3 00/21] Preserved-over-Kexec RAM Thread-Index: AQHZfMp2lJg8EKfTcU+6dylzOaNCcq9sul0A Date: Fri, 26 May 2023 13:57:18 +0000 Message-ID: References: <1682554137-13938-1-git-send-email-anthony.yznaga@oracle.com> In-Reply-To: <1682554137-13938-1-git-send-email-anthony.yznaga@oracle.com> Accept-Language: en-ZA, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.146.13.223] Content-Type: text/plain; charset="utf-8" Content-ID: <1652FBAFA9EDC04894CB1A78E19DF4F0@amazon.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Rspam-User: X-Stat-Signature: xwetbtw7a3rpi4roxedk1ihj61kjadii X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 4039B140015 X-HE-Tag: 1685109447-692334 X-HE-Meta: U2FsdGVkX1+sPDN3jGDpJeSkBoW4SN8gV5DicJF+Yk8QRGYxfHapkg/3ndKRVQr8TJ399WReV3C3gcSFtQhRpiCBi6KtjYELP79ScQAqdaSYkoYOOm5VtewIaRWp9UrqgYQ7P1JTZ+hu7Y3EEoujuR1ECaAl66RqpKeq2CJcxbNWvOasdYKaDOK6DQ9OEn5PZyg63lZgHyqod9QxwqTAkkco24IdqmChH7Cxm7K1gpiT8+Ao9ARDc5ss9G/sMOETrYGaRqsXhdT4ag8PLZbACrLGMC/DmdM5ODM/mNnBSGWzF4a7PJh0+PWA0sz8eHFxn8bCDPALJ0gDrEIPCr5WmYco8SAfA3rQ71O+TROJ3iVUscg1UdWZjZW6yXRIna+qVfhNc+xNboQyvAvnChRwCu175wbZgifGn4XKw8koqO5edRPRsShL77IdCWFpuiZXQKQpOPr6ld+IfSh5vuh0PnYHrXg3mI2MEyswN/gsNMPXDLFS3LVyaP6O+yyOUGeI0zRlVTsB+0BRsTnUdSEL7GFdG0NJ6cWh48DTyUF3/Z/JMqgXzQgFasD01uRchW9/ROmc+IXWu3wsN8zuXzoOGQiU8TDQt4eV/9zPukQOMyWu7X1ktydbNKWaTlR2QzIGwDYkRpeSgp3DgwMRUAINPVTpknRd+Vfu6DeAPJQAKWBIFZadqj0clqCG5eSutfO0Qeq9UEaStDsf1A2sZ+ivzKoF33m9Iw0DJ0iDCnQCC38vr+AdfWilqawfsatcbpIfW6tDn6g1UgxC5GOBnVHup3RmR34k4uvanhTMFg7duhLV25dkvuMsFpjWC14+fb1q4eNUBlkT5MCO8TfSFCHNwDRx/zOZMZcRhifm0u/TcRF5wt2fxwryj6prr2f9J1HZtRu+QtDnRJbpMwO5FmcLngsiKKKUpO8f5JoTCZlaJmwDDees3TkIYgX25b4JqdED7Ewi+huLrX0SXnl+vMZ W/KgNzo9 xZUWO6GPtb7ct7oz3ymTeWxXGR5C9BUUMUl6DCw8isEZxKXcp4FH3l+bVARa9hv+R1cHncIB3s/2dj5DcRPdpH6my5+/4HjbXx+Y45Bfih9Xa3WbcR4f/QGXZvTerOCwUlkjdZbd3kQh9bBuFVS9osCPPpKTpuA4u2VmVbMWDus6XOh10dizs5wFQyf2TcIJLxmCeGoAaHZLMaUhAmlhsYZiWu5Fn/iLsMlmleHY/F03gVUinTR5GIfafWKJVSGm5bnxrLQm3Tg11kDMxF463lFeC//YVUgqfv0KCdj/B2kwtEkLusYchwCK74VAqRHvemv0rcHu6XjwXaXljHXHGZsvrEl6P8PrpuKVAWUyCgF3SSTf0MkERGf4985xunfG/Jz0UVK5qUGoShtX4kLwGmxw81J7+LOlkUVfb9lQnLy3T6SoahP9LE2rRtI//F/rbK3yQu9B+kTPOyGJDxL6wmDP2LcGAfO/xc5mL2knefPPdusJdvSzN7FqNBhjUyCkUlgtMLN7G1eT92oMAbkeccJHzdx79jXER7PElb3Oyw1NVIPSxXRs2UocpmKtM2QjalVnxMeKJ4+/TeGqLPlEcGdgSzspUZt0byWB1MdeiYK0vhxdo35EPwXDVnugAzua8bZ7UM87JvrJDDp7sMkBxXSX8njVYuq8cda0jmSeVS5EdhnCnJTOxTWJS7QXHZtq9TNh7HvhEzn6vE9TWBXD8VAoHof+9JlOiPtTYkt2nsyUjHoWSiPlhNcFi4/sbdWfi8f0OpIqkDx9QYfo/vRg9i1VO16Aoyqwj1sbzw+/EfvJ8uGX7ofV/E6qZvYG20XrdKzvtpyZgcuNxab08pk52FNBeWwBulI3pXQNHiVuyYPh3lt9JWMysvtH8OrQhjO+Qn5gZ X-Bogosity: Ham, tests=bogofilter, spamicity=0.000012, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: T24gV2VkLCAyMDIzLTA0LTI2IGF0IDE3OjA4IC0wNzAwLCBBbnRob255IFl6bmFnYSB3cm90ZToN Cj4gU2VuZGluZyBvdXQgdGhpcyBSRkMgaW4gcGFydCB0byBndWFnZSBjb21tdW5pdHkgaW50ZXJl c3QuDQo+IFRoaXMgcGF0Y2hzZXQgaW1wbGVtZW50cyBwcmVzZXJ2ZWQtb3Zlci1rZXhlYyBtZW1v cnkgc3RvcmFnZSBvciBQS1JBTSBhcyBhDQo+IG1ldGhvZCBmb3Igc2F2aW5nIG1lbW9yeSBwYWdl cyBvZiB0aGUgY3VycmVudGx5IGV4ZWN1dGluZyBrZXJuZWwgc28gdGhhdA0KPiB0aGV5IG1heSBi ZSByZXN0b3JlZCBhZnRlciBrZXhlYyBpbnRvIGEgbmV3IGtlcm5lbC4gVGhlIHBhdGNoZXMgYXJl IGFkYXB0ZWQNCj4gZnJvbSBhbiBSRkMgcGF0Y2hzZXQgc2VudCBvdXQgaW4gMjAxMyBieSBWbGFk aW1pciBEYXZ5ZG92IFsxXS4gVGhleQ0KPiBpbnRyb2R1Y2UgdGhlIFBLUkFNIGtlcm5lbCBBUEku DQo+IA0KPiBPbmUgdXNlIGNhc2UgZm9yIFBLUkFNIGlzIHByZXNlcnZpbmcgZ3Vlc3QgbWVtb3J5 IGFuZC9vciBhdXhpbGxhcnkNCj4gc3VwcG9ydGluZyBkYXRhIChlLmcuIGlvbW11IGRhdGEpIGFj cm9zcyBrZXhlYyB0byBzdXBwb3J0IHJlYm9vdCBvZiB0aGUNCj4gaG9zdCB3aXRoIG1pbmltYWwg ZGlzcnVwdGlvbiB0byB0aGUgZ3Vlc3QuDQoNCkhpIEFudGhvbnksDQoNClRoYW5rcyBmb3IgcmUt cG9zdGluZyB0aGlzIC0gSSdtIGJlZW4gd2FudGluZyB0byByZS1raW5kbGUgdGhlIGRpc2N1c3Np b24NCm9uIHByZXNlcnZpbmcgbWVtb3J5IGFjcm9zcyBrZXhlYyBmb3IgYSB3aGlsZSBub3cuDQoN ClRoZXJlIGFyZSBhIGZldyBhc3BlY3RzIGF0IHBsYXkgaW4gdGhpcyBzcGFjZSBvZiBtZW1vcnkg bWFuYWdlbWVudA0KZGVzaWduZWQgc3BlY2lmaWNhbGx5IGZvciB0aGUgdmlydHVhbGlzYXRpb24g YW5kIGxpdmUgdXBkYXRlIChrZXhlYykgdXNlLQ0KY2FzZSB3aGljaCBJIHRoaW5rIHdlIHNob3Vs ZCBjb25zaWRlcjoNCg0KMS4gUHJlc2VydmluZyB1c2Vyc3BhY2UtYWNjZXNzaWJsZSBtZW1vcnkg YWNyb3NzIGtleGVjOiB0aGlzIGlzIHdoYXQgcGtyYW0NCmFkZHJlc3Nlcy4NCg0KMi4gUHJlc2Vy dmluZyBrZXJuZWwgc3RhdGU6IFRoaXMgd291bGQgaW5jbHVkZSBtZW1vcnkgcmVxdWlyZWQgZm9y IGtleGVjDQp3aXRoIERNQSBwYXNzdGhyb3VnaCBkZXZpY2VzLCBsaWtlIElPTU1VIHJvb3QgcGFn ZSBhbmQgcGFnZSB0YWJsZXMsIERNQS0NCmFibGUgYnVmZmVycyBmb3IgZHJpdmVycywgZXRjLiBB bHNvIGNlcnRhaW4gc3RydWN0dXJlcyBmb3IgaW1wcm92ZWQga2VybmVsDQpib290IHBlcmZvcm1h bmNlIGFmdGVyIGtleGVjLCBsaWtlIGEgUENJIGRldmljZSBjYWNoZSwgY2xvY2sgTFBKIGFuZA0K cG9zc2libGUgb3RoZXJzLCBzb3J0IG9mIHdoYXQgWGVuIGJyZWFkY3J1bWJzIFswXSBhY2hpZXZl cy4gVGhlIHBrcmFtIFJGQw0KaW5kaWNhdGVzIHRoYXQgdGhpcyBzaG91bGQgYmUgcG9zc2libGUs IHRob3VnaCBJTU8gdGhpcyBjb3VsZCBiZSBtb3JlDQpzdHJhaWdodCBmb3J3YXJkIHRvIGRvIHdp dGggYSBuZXcgZmlsZXN5c3RlbSB3aXRoIGZpcnN0LWNsYXNzIHN1cHBvcnQgZm9yDQprZXJuZWwg cGVyc2lzdGVuY2UgdmlhIHNvbWV0aGluZyBsaWtlIGlub2RlIHR5cGVzIGZvciBrZXJuZWwgZGF0 YS4NCg0KMy4gRW5zdXJpbmcgaHVnZS9naWdhbnRpYyBtZW1vcnkgYWxsb2NhdGlvbnM6IHRvIGlt cHJvdmUgdGhlIFRMQiBwZXJmIG9mDQoyLXN0YWdlIHRyYW5zbGF0aW9ucyBpdCdzIGJlbmVmaWNp YWwgdG8gYWxsb2NhdGUgZ3Vlc3QgbWVtb3J5IGluIGxhcmdlDQpjb250aWd1b3VzIGJsb2Nrcywg cHJlZmVyYWJseSBQVUQtbGV2ZWwgYmxvY2tzIGZvciBtdWx0aS1HaUIgZ3Vlc3RzLiBJZg0KdGhl IGJ1ZGR5IGFsbG9jYXRvciBpcyB1c2VkIHRoaXMgbWF5IGJlIGEgY2hhbGxlbmdlIGJvdGggZnJv bSBhbg0KaW1wbGVtZW50YXRpb24gYW5kIGEgZnJhZ21lbnRhdGlvbiBwZXJzcGVjdGl2ZSwgYW5k IGl0IG1heSBiZSBkZXNpcmFibGUgdG8NCmhhdmUgc3Ryb25nZXIgZ3VhcmFudGVlcyBhYm91dCBh bGxvY2F0aW9uIHNpemVzLg0KDQo0LiBSZW1vdmluZyBzdHJ1Y3QgcGFnZSBvdmVyaGVhZDogV2hl biBkb2luZyB0aGUgaHVnZS9naWdhbnRpYw0KYWxsb2NhdGlvbnMsIGluIGdlbmVyYWxseSBpdCB3 b24ndCBiZSBuZWNlc3NhcnkgdG8gaGF2ZSA0IEtpQiBzdHJ1Y3QNCnBhZ2VzLiBUaGlzIGlzIHNv bWV0aGluZyB3aXRoIGRtZW1mcyBbMSwgMl0gdHJpZXMgdG8gYWNoaWV2ZSBieSB1c2luZyBhDQps YXJnZSBjaHVuayBvZiByZXNlcnZlZCBtZW1vcnkgYW5kIG1hbmFnaW5nIHRoYXQgYnkgYSBuZXcg ZmlsZXN5c3RlbS4NCg0KNS4gTW9yZSAiYWR2YW5jZWQiIG1lbW9yeSBtYW5hZ2VtZW50IEFQSXMv aW9jdGxzIGZvciB2aXJ0dWFsaXNhdGlvbjogQmVpbmcNCmFibGUgdG8gc3VwcG9ydCB0aGluZ3Mg bGlrZSBETUEtZHJpdmVuIHBvc3QtY29weSBsaXZlIG1pZ3JhdGlvbiwgbWVtb3J5DQpvdmVyc3Vi c2NyaXB0aW9uLCBjYXJ2aW5nIG91dCBjaHVua3Mgb2YgbWVtb3J5IGZyb20gYSBWTSB0byBsYXVu Y2ggc2lkZS0NCmNhciBWTXMsIG1vcmUgZmluZS1ncmFpbiBjb250cm9sIG9mIElPTU1VIG9yIE1N VSBwZXJtaXNzaW9ucywgZXRjLiBUaGlzDQptYXkgYmUgZWFzaWVyIHRvIGFjaGlldmUgd2l0aCBh IG5ldyBmaWxlc3lzdGVtLCByYXRoZXIgdGhhbiBjb3VwbGluZyB0bw0KdGVtcGZzIHNlbWFudGlj cyBhbmQgaW9jdGxzLg0KDQpPdmVyYWxsLCB3aXRoIHRoZSBhYm92ZSBpbiBtaW5kLCBteSB0YWtl IGlzIHRoYXQgd2UgbWF5IGhhdmUgYSBzbW9vdGhlcg0KcGF0aCB0byBpbXBsZW1lbnQgYSBtb3Jl IGNvbXByZWhlbnNpdmUgc29sdXRpb24gYnkgZ29pbmcgdGhlIHJvdXRlIG9mIGENCm5ldyBwdXJw b3NlLWJ1aWx0IGZpbGUgc3lzdGVtIG9uIHRvcCBvZiByZXNlcnZlZCBtZW1vcnkuIFNvcnQgb2Yg bGlrZQ0KZG1lbWZzIHdpdGggcGVyc2lzdGVuY2UgYW5kIHNwZWNpZmljYWxseSBzdXBwb3J0IGZv ciBrZXJuZWwgcGVyc2lzdGVuY2UuDQoNCkRvZXMgbXkgdGFrZSBoZXJlIG1ha2Ugc2Vuc2U/DQoN CkknbSBob3BpbmcgdG8gcHV0IHRvZ2V0aGVyIGFuIFJGQyBmb3Igc29tZXRoaW5nIGxpa2UgdGhl IGFib3ZlIChkbWVtZnMNCndpdGggcGVyc2lzdGVuY2UpIHNvb24sIGZvY3VzaW5nIG9uIGhvdyB0 aGUgSU9NTVUgcGVyc2lzdGVuY2Ugd2lsbCB3b3JrLg0KVGhpcyBpcyBhbiBpbXBvcnRhbnQgZGlm ZmVyZW50aWF0aW5nIGZhY3RvciB0byBjb3ZlciBpbiB0aGUgUkZDLCBJTU8uDQoNCj4gUEtSQU0g cHJvdmlkZXMgYSBmbGV4aWJsZSB3YXkNCj4gZm9yIGRvaW5nIHRoaXMgd2l0aG91dCByZXF1aXJp bmcgdGhhdCB0aGUgYW1vdW50IG9mIG1lbW9yeSB1c2VkIGJ5IGEgZml4ZWQNCj4gc2l6ZSBjcmVh dGVkIGEgcHJpb3IuDQoNCkFGQUlDVCB0aGUgbWFpbiBkb3duLXNpZGUgb2Ygd2hhdCBJJ20gc3Vn Z2VzdGluZyBoZXJlIGNvbXBhcmVkIHRvIHBrcmFtLA0KaXMgdGhhdCBhcyB5b3Ugc2F5IGhlcmU6 IHBrcmFtIGRvZXNuJ3QgcmVxdWlyZSB0aGUgdXAtZnJvbnQgcmVzZXJ2aW5nIG9mDQptZW1vcnkg LSBhbGxvY2F0aW9ucyBmcm9tIHRoZSBnbG9iYWwgc2hhcmVkIHBvb2wgYXJlIGR5bmFtaWMuIEkn bSBvbiB0aGUNCmZlbmNlIGFzIHRvIHdoZXRoZXIgdGhpcyBpcyBhY3R1YWxseSBhIGRlc2lyYWJs ZSBwcm9wZXJ0eSB0aG91Z2guIENhcnZpbmcNCm91dCBhIGxhcmdlIGNodW5rIG9mIHN5c3RlbSBt ZW1vcnkgYXMgcmVzZXJ2ZWQgbWVtb3J5IGZvciBhIHBlcnNpc3RlZA0KZmlsZXN5c3RlbSAoYXMg SSdtIHN1Z2dlc3RpbmcpIGhhcyB0aGUgYWR2YW50YWdlcyBvZiByZW1vdmluZyBzdHJ1Y3QgcGFn ZQ0Kb3ZlcmhlYWQsIHByb3ZpZGluZyBiZXR0ZXIgZ3VhcmFudGVlcyBhYm91dCBodWdlL2dpZ2Fu dGljIHBhZ2UNCmFsbG9jYXRpb25zLCBhbmQgcHJvYmFibHkgbWFrZXMgdGhlIGtleGVjIHJlc3Rv cmUgcGF0aCBzaW1wbGVyIGFuZCBtb3JlDQpzZWxmIGNvbnRhaW5lZC4NCg0KSSB0aGluayB0aGVy ZSdzIGFuIGFyZ3VtZW50IHRvIGJlIG1hZGUgdGhhdCBoYXZpbmcgYSBjbGVhcmx5LWRlZmluZWQg bGFyZ2UNCnJhbmdlIG9mIG1lbW9yeSB3aGljaCBpcyBwZXJzaXN0ZWQsIGFuZCB0aGUgcmVzdCBp cyBub3JtYWwgImVwaGVtZXJhbCINCmtlcm5lbCBtZW1vcnkgbWF5IGJlIHByZWZlcmFibGUuDQoN CktlZW4gdG8gaGVhciB5b3VyIChhbmQgb3RoZXJzKSB0aG91Z2h0cyENCg0KSkcNCg0KWzBdIGh0 dHA6Ly9kYXZpZC53b29kaG91LnNlL2xpdmUtdXBkYXRlLWhhbmRvdmVyLnBkZg0KWzFdIGh0dHBz Oi8vbHduLm5ldC9BcnRpY2xlcy84MzkyMTYvDQpbMl0gaHR0cHM6Ly9sa21sLm9yZy9sa21sLzIw MjAvMTIvNy8zNDINCg==