Received: by 2002:a05:6358:bb9e:b0:b9:5105:a5b4 with SMTP id df30csp4698220rwb; Tue, 6 Sep 2022 11:10:48 -0700 (PDT) X-Google-Smtp-Source: AA6agR4rjnaYkENe3JszPdQ9ek5fwku1o+rEaYxAE4aSlYN0YW3+IIUwPFGGOJ+8zVzrqU0uVB1q X-Received: by 2002:a17:903:1ce:b0:16f:145c:a842 with SMTP id e14-20020a17090301ce00b0016f145ca842mr54030330plh.83.1662487848641; Tue, 06 Sep 2022 11:10:48 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1662487848; cv=pass; d=google.com; s=arc-20160816; b=ASN0KK18LrH7WpSGBExUB5xmC33sXUJxDMMaOCWmyAyEXQV9xaaxotZNWG9xyjkoFr R7HOay+OB5PJBzia88e3XEX+yKPe6YwefgcOjCSGbe16H+uhoZagYK0eks3EAbwCqD8I WW9cLQCdUTrIa9rzvW2slTXGGECSjzkrsS1T+etXygttfPx7SM4xKwtdxLEzpYLJ5jKX pUkQ1vArJxaX3yvFqhIM9PTdTX+WhNCrCrDm7S2zauAKE59JY0SE7rOoY7CGWyg1L1N+ zqgMsEwfFp9E6wAc2da2K1rKta/8n98Nk6EO+efj278PlwN0XiJybs2maJv8Jn+8foyU l9hQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=kCD9VUcklsXSEjIT/Dt/wN/uynh0GZKD91CzRLnH0/s=; b=PaWH9EUVhUSGhymr/qzSJJoDgls3wc1narKQ3X9gIIC8kIhKq37zggx6yalNtJv1aK cMqrXR/McLcivqsFaVEot+O8oFLCRcyJBnJzKI0HmPoYtPtihfFRpJ0ZyUopA05w+u+l Al5AqoaCVX8Iq9sJwE5NaIFiczaVHSXnkijrxQ5CBER5xc0dK5HMqd9r/W6SNwSw1j2m SbckSgfo5PDHMMIOKvBgtzjClNVFudA+9kUJsczmw2n61z8GCoIJ1BqJVWHa1LrwkI3u UgB4xPefBL4XTpP47DjvjRTv/Qf7sQJMP7uNQ11xdB5lDZ+joWt9PR+ohSXsuwZpILW7 BVHw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=FERuFyXE; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id k71-20020a63844a000000b0041bff5ba133si13579919pgd.717.2022.09.06.11.10.36; Tue, 06 Sep 2022 11:10:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=FERuFyXE; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229576AbiIFQ5i (ORCPT + 99 others); Tue, 6 Sep 2022 12:57:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55578 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233839AbiIFQ5O (ORCPT ); Tue, 6 Sep 2022 12:57:14 -0400 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 03A5A1D321 for ; Tue, 6 Sep 2022 09:43:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1662482636; x=1694018636; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=kCD9VUcklsXSEjIT/Dt/wN/uynh0GZKD91CzRLnH0/s=; b=FERuFyXE82lPZJs7XujobMf8bguzjCismZSmMo9YXiRx9SuS5we3QOqs Sj4f4nMQ6ORGwDkpw7gCVd3ncOWHpkACBUiv/bLMzkgZgdGpIkukKXf/H 7Bx7Ed6PQMDLt0FKMMtUq58nCX4+AFgaOUn5T7syhzuEF3Gebgy4ADeCs CdcbZGvuPtjpz2Hq3TZBc/VXuamqI3R3gfICGHc7GeICcUz6IAADy+7Lw NVICjBRcREkmCiM+w1VlD0Vn/qFG6FAWOUdzonGeNZbGXAD8tNafp9aFC b2ecoHE//K23uusSARhclacNA3TpkiUv96YOIgqQH8rPiJLcXnOf4GKVE w==; X-IronPort-AV: E=McAfee;i="6500,9779,10462"; a="297428235" X-IronPort-AV: E=Sophos;i="5.93,294,1654585200"; d="scan'208";a="297428235" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Sep 2022 09:42:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,294,1654585200"; d="scan'208";a="703274030" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by FMSMGA003.fm.intel.com with ESMTP; 06 Sep 2022 09:42:40 -0700 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Tue, 6 Sep 2022 09:42:40 -0700 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Tue, 6 Sep 2022 09:42:40 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Tue, 6 Sep 2022 09:42:40 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.108) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Tue, 6 Sep 2022 09:42:39 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Of6e7X4KLXusYPSem2+YZCJg4shSEepjNB+Mpl3m6alJ7RYeHBz+9YqCBFH/Ofk/8wcN/t5rT2MsKAcltTQAeTso2ek5f+uXvnMKHgfHEmgA/9h/feB+1M2cazpq4YyVthRBQ+15YYc4mmypp4qVU55b2QvTiEBKL/UZ5/duN5SVkePSBNwNcQP1nFgAQf4mF4ztLuIgb7R5YwyHSZ/L16sbWX3Kj15vM1yYwzs1tAsm9/pggNJZ8kOG3aB9fE1+/fO8qPUXuRI1VacTh6HDCwPbg2ZuyI9fyPV8q0cdiBox4EpdtXo0bcQeadEYUToy9dPdiuLvDUfcpsE0tjX6mw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=kCD9VUcklsXSEjIT/Dt/wN/uynh0GZKD91CzRLnH0/s=; b=Aqq3aK5fRB9HKOU7DGxw3WpWlevLBYSIn9o0ht+zh8dLmv/RYdM/oJVSZELKXhHYrcTdYbhnTrFJ1jLstSLquSR0E5fx2qSSuElt8ev1n3vsJJPo/O4b4HXVID5IKQG+qA5OiQzkzfP03mtP52vRaWwoRb6Uz/ey/ryAsTZJdVjI/h5Sly07FHDForj6GASDTQCKCewJ8yf3HDg7JhXpqgUUDMlH0c3H5P+uhT3RyrhAapk1auJh8o65MAflEiPS6lNdnA+6/te1M7O5/tV/xef9HwIazI9f5wORK5c8gYMa7ULqLYCp1r50gv7VxMDsGdkZHsXm3l2dG1VUxPx2eQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MWHPR11MB1392.namprd11.prod.outlook.com (2603:10b6:300:24::14) by DM5PR11MB2057.namprd11.prod.outlook.com (2603:10b6:3:d::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.10; Tue, 6 Sep 2022 16:42:33 +0000 Received: from MWHPR11MB1392.namprd11.prod.outlook.com ([fe80::48b7:53bf:e2d3:b61]) by MWHPR11MB1392.namprd11.prod.outlook.com ([fe80::48b7:53bf:e2d3:b61%5]) with mapi id 15.20.5588.017; Tue, 6 Sep 2022 16:42:32 +0000 From: "Edgecombe, Rick P" To: "pasha.tatashin@soleen.com" , "Huang, Shaoqin" CC: "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" , "akpm@linux-foundation.org" Subject: Re: [PATCH] mm: Check writable zero page in page table check Thread-Topic: [PATCH] mm: Check writable zero page in page table check Thread-Index: AQHYvyQZLcFou4NI1EGJsJ/5FmITGK3M9yUAgAScQICAAQ2jgA== Date: Tue, 6 Sep 2022 16:42:32 +0000 Message-ID: <20f231396dfcd9b5ac47e5ab5e5d177e1eaab3ec.camel@intel.com> References: <20220902232732.12358-1-rick.p.edgecombe@intel.com> <3d82deb6-357d-0b54-ffd1-dce157674aad@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Evolution 3.28.5-0ubuntu0.18.04.2 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c2c7f527-ed94-4e67-ce02-08da9026cbc9 x-ms-traffictypediagnostic: DM5PR11MB2057:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: A3XDGHpj0Jqw8P7Z2Bnb4dWZ+K5BNlaBH2hQzdFQCR64igPq45g4oPd2GVO7lO0Ngn3WqWwlTku6BSoYQCJKKJFvoof/sySSIwo17Ej1w3CIyMlZb3bxZW3E71D5Hd9BwQhc9miznffN5oxZ3Y+Fq5O3pF55UpNoIbwqDC4iQA5PLjTonWpkJ9LloZ5M1sTL2YOQ+o+ZVcJbDmtMdOuRfN6FRs5wp8U7dQzouWjwh/aaZ7WnS8tK/+aXVmMUeG3IXo6BPvIUXE8havOf3RvpCtHRxDRtLrkPm2FuaCQjCIxTc0bSAT6oSfJ4e1p3l1XIt/HewvP3Td1mKotk/SVVIlJI/altMgutiQlZNgB0MkRsXCMlaWz8OY26OrdynSGRj4w5eEIP9K7GakD58m2OfH6fh3W8ocOuCbcaEBTZYqBk/J6qj3AoximEE3ekiEEyEkUjSJ+ZlgIbejPSMcO9PocAs8ACrIXRfaOPjvCkjg+Fsw21jKtjM2PlkeW5I6ZFLpYjaVqZntRiZQJfCsAqFmH1d6a5+i2jDl4d1Nhqx7oLEF/Jt/OqmVIWN8DcUWjq/7rWjSqiRhiCqhZUIe0hAg3vG5kdCPur4ENYnfxNAh3VCNQUtqJR3qI9YPcyvcHlAkTpbv7JBzYRYSUn1l/puW8Eg+z1v3Ia5HARXUEQmCZa/yiv6JPejZcW5tEqTIFJq3GLwEdVr8LPnk9wO6gStawIlaeU65SK45/zSeAaRhjIwh3YvODQryucZpgtD4J5zrw3dQpw3bvQfBPlnjE+h7lUMhBr36YLstxyWUkyPaI= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1392.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(39860400002)(136003)(376002)(366004)(396003)(346002)(66476007)(4326008)(83380400001)(66446008)(66946007)(8676002)(64756008)(91956017)(76116006)(8936002)(5660300002)(41300700001)(66556008)(478600001)(6506007)(26005)(6486002)(71200400001)(6512007)(186003)(2616005)(316002)(110136005)(6636002)(82960400001)(86362001)(54906003)(38100700002)(36756003)(2906002)(122000001)(38070700005)(99106002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?YkIrM2p1eFEvclpzZjhKeE1ydW9qZEJYYUJhU3FVM3cxTEZIWlZBdFZLZkFz?= =?utf-8?B?TFliOWYvOXdwQVJPM1E0OE9IenkvR1F2dXRLdUhyMFhJUDBCL1NRZUpkdUZl?= =?utf-8?B?UGFNL0RPeFlZL3dmbW1VVHlYZVFiQ05PRmNmZ1l2Mm5oenFvSUw1a3RuZkpi?= =?utf-8?B?WlFnYjlXZkpnWFBIOUhEUFJydlFpSlE0RDJOb2ZYWTZyMUpyZ0doZUZVV0JJ?= =?utf-8?B?Zk5wakp1L0ExcmxSMmNXckRHVWVjY1VmdS9xVmQ5cnJYRkFtRHJMNFJTcTlv?= =?utf-8?B?VEQrdGxnM2lxWFk5UUprcGpwT1MwL0JaaDVZb294Z0kvbFlvRzlxUmx6Skhy?= =?utf-8?B?aEN5eFBWc3phYmJQYTNvQkR5aTFDWUxRVlhxR053N2dVUkJMUHdQWkxoRzk0?= =?utf-8?B?TS9ramsrVnVaenV4ZExDMXVZa21ZR2JBNjhhUklhaHJBd2ZMUDhMcFh2aWRp?= =?utf-8?B?ODcycGtISi8rbFlSaG9CVStNNFhNNXFUQmRJVk9qU2VXOVFmSC9Kd0dkYktU?= =?utf-8?B?c3hleHVzbHY2aGNSOStzb1A1VDN6bVRjUGhpSHBUQnZVNnVVdmxMc1RzaDYz?= =?utf-8?B?NS9hTDZLL3pMSWxCWnMzZW13aWE1SVlOeFNPUk5zTWsrVmkyMkNOUldBMjdy?= =?utf-8?B?SVhwQ0VoK2R4dlQyb0VReEFuWW1iY0UwLzJmbkpZQllpWFR2SUw2NHcwby9S?= =?utf-8?B?N1B0MDFWT3MxdkwxeFpiQnhxMHA3YkgwT2FJUndaRjNNcXMrUEhvUmx5bDlL?= =?utf-8?B?QkU3VnJNTW9CcTg1N0wzbGU0dHNCcS8zRzNFSDVDc3lVODVXL09BK1JGQ3JR?= =?utf-8?B?MURaeVB2c0UvRFNzYUJQcCtPZUJqWjduRDJxRFJTWHFiaE4yYks2ZHRCV3gy?= =?utf-8?B?T3BzTERCTDhLQld3c0NXWXZjV01xd0lSRWszNmVZVVRnODh0aHVkcGg5ZlpO?= =?utf-8?B?cXE4aTN5M2c3aFdmR0RqcS8rQU4rUEFXbExSVkNZa00ySk9pYTR2U3lZbXla?= =?utf-8?B?QTJmVkZEaEVPMVk5Q21oaEc3STBwY3dNVjJkUmFCZktOeTZEdllWek8vck9U?= =?utf-8?B?MDlMaDFIbi94aWtUUEYrOFR6R0ZHYWhvNTNmc2dHMnFucnFTTEVPbGtuZ1RB?= =?utf-8?B?R0QyZWtMSXdmN3lKQTc2Wm5taElHQUliUEI2U2J5VVVWaXppT2N5NzRMNXNO?= =?utf-8?B?c1NCaW8zbUVoNFErY1g0VzdseUEvK3NSZzFoeGhDZkcxaXBrelVVMUdQNVZV?= =?utf-8?B?ckpZSTJsb0FmNFR5Ym9qZXF3czNQMTlUWFRHNld3NTlGT0hqQkg1OHU3Q09M?= =?utf-8?B?bng2M3AraGNsN0liUkdhYWRmdUxKUWZ1L0hLd3JlRnQwdXZPSmVsd2VrNzh5?= =?utf-8?B?Sld3R2tVY01pUS9QYVNadkNoRExvekZNTStvVm42RVgvUHJOeHBtMFJhN0Uz?= =?utf-8?B?K3pEaEdxb1BYREJ0R3hEdFBoS0p0NWhvbmVUVVNvYVUrMFB6eWt6MWRDbjNi?= =?utf-8?B?S2MzRzlOd3JqZGluRHllRVQvV2tWbVlnRW1nZ3ZkcnZ2MGNvanhSanZWS0xI?= =?utf-8?B?WjZtUGt5bC9LbFE4b0h1RTVKa2J0UUpjR3FIcE9WR0tuUFgvK0NPdGNkck9u?= =?utf-8?B?YitBVkxrV3dTUlUzTzBxYlRhMDhxMUNYRW5OM2JhR1JBZ0FrdVpmVk1KQ2FK?= =?utf-8?B?OTM3SVVkWHFLZ1FzTDBPZUpicm9oTDJmaVpISG5RZEI5RGtweTlxVjhLUDRm?= =?utf-8?B?MEhxalhrdVZQT093MkdVeHIwbW9Ec1dZMGRHdEx6d2cxOEZybVA1bW50a2pL?= =?utf-8?B?OHZ4QWMwWnZ1d2Zoa0xtTDFJYzYyYVZhcExaa3hrTnM2Y3RzekdrdnZPWm10?= =?utf-8?B?UDI5clRDMVhMVjAwMEhpN0k4VjRuelV1TnpXbC9CbmpxS0VMN05OdWxVaUVm?= =?utf-8?B?WGRqYzBlTWUwbzFjNlhLbWhZbWloUG1ScDNsbGpaTnhxMjM4VHlnSDlLOXVW?= =?utf-8?B?dnlkMXpmeU1BazZ4M2sxNnRxMXhLRWJidGZvaWRET0RvOHNnek5XSjNSaWxY?= =?utf-8?B?VDEwY3NDa0Z4L2k4T2VpZlJpd21jY3Q0WlVjMnI4N0tZQ085SkZualgwMkdh?= =?utf-8?B?LzZPaW5hWTUzby9teDloT2habHB0dG9SUC8xcmpjcDZFb1lnVjduZGZsblln?= =?utf-8?Q?98GUaQW6Szw2qtowlnieZrw=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <6A56B330F466954895DB89B083F36DF2@namprd11.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1392.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c2c7f527-ed94-4e67-ce02-08da9026cbc9 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Sep 2022 16:42:32.8503 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: TWm3Vpqm9i4S5ap8ovK3y7ot+mcnZ++eXh5VWEzJK9JHdRAf4RjAA6FRqW94yP0OmKctjocBiq4DYtRu1JcpZ//y74SE/O5G8d7DSvhKajI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR11MB2057 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gTW9uLCAyMDIyLTA5LTA1IGF0IDIwOjM3IC0wNDAwLCBQYXNoYSBUYXRhc2hpbiB3cm90ZToN Cj4gVGhlIGlkZWEgYmVoaW5kIHBhZ2UgdGFibGUgY2hlY2sgaXMgdG8gcHJldmVudCBzb21lIHR5 cGVzIG9mIG1lbW9yeQ0KPiBjb3JydXB0aW9uczogaS5lLiBwcmV2ZW50IGZhbHNlIHBhZ2Ugc2hh cmluZywgYW5kIG1lbW9yeSBsZWFraW5nDQo+IGJldHdlZW4gYWRkcmVzcyBzcGFjZXMuIFRoaXMg aXMgYW4gb3B0aW9uYWwgc2VjdXJpdHkgZmVhdHVyZSBmb3INCj4gc2V0dXBzIHdoZXJlIGl0IGlz IG1vcmUgZGFuZ2Vyb3VzIHRvIGxlYWsgZGF0YSB0aGFuIHRvIGNyYXNoIHRoZQ0KPiBtYWNoaW5l LiBUaGVyZWZvcmUsIHdoZW4gcGFnZSB0YWJsZSBjaGVjayBkZXRlY3RzIGlsbGVnYWwgcGFnZQ0K PiBzaGFyaW5nDQo+IGl0IGltbWVkaWF0ZWx5IGNyYXNoZXMgdGhlIGtlcm5lbC4gSSB0aGluayB3 ZSBjYW4gaGF2ZSBhDQo+IHBhZ2VfdGFibGVfY2hlY2sgb3B0aW9uIHRoYXQgd291bGQgY2hhbmdl IEJVR19PTiB0byBXQVJOX09OKCkgKG9yIHRvDQo+IFdBUk5fT05fT05DRSgpLCBzaW5jZSBvbmNl IGNvcnJ1cHRpb24gaXMgZGV0ZWN0ZWQgSSBiZWxpZXZlIGl0IG1pZ2h0DQo+IHNob3cgdXAgbWFu eSB0aW1lcyBhZ2FpbikNCg0KRG8geW91IHRoaW5rIHRoZXJlIGFyZSBhIGxvdCBvZiBwZW9wbGUg dGhhdCB3b3VsZCB3YW50IHRvIHNldCBwYWdlDQp0YWJsZSBjaGVjayB0byBCVUdfT04gbW9kZSwg dGhhdCB3b3VsZG4ndCBhbHJlYWR5IGJlIHNldHRpbmcNCnBhbmljX29uX3dhcm4/DQoNCkkgZGlk bid0IHJlYWxpemUgcGFnZSB0YWJsZSBjaGVjayB3YXMgbWVhbnQgdG8gYmUgYSBzZWN1cml0eSBm ZWF0dXJlIGFzDQp3ZWxsLiBJIHRob3VnaHQgaXQgd2FzIG1vcmUgb2YgYSBkZWJ1ZyB0aW1lIGNo ZWNrZXIuDQoNCkxvb2tpbmcgdGhyb3VnaCBtb3JlIHJlbGF0ZWQgZGlzY3Vzc2lvbnMsIHRoZXJl IHNlZW1zIHRvIGJlIGEgc3Ryb25nDQphdmVyc2lvbiB0byAiY3Jhc2ggdGhlIGtlcm5lbCIgZmVh dHVyZXMuIEVzcGVjaWFsbHkgaWYgdGhleSBhcmUgbWVhbnQNCnRvIHJ1biBpbiBhIG5vbi10ZXN0 aW5nIGNvbnRleHQuDQo=