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 A8448ECAAA1 for ; Thu, 15 Sep 2022 22:51:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 132398D0001; Thu, 15 Sep 2022 18:51:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0DF946B0073; Thu, 15 Sep 2022 18:51:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E9B688D0001; Thu, 15 Sep 2022 18:51:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id DB8DD6B0072 for ; Thu, 15 Sep 2022 18:51:05 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id ABCDD141A3E for ; Thu, 15 Sep 2022 22:51:05 +0000 (UTC) X-FDA: 79915816890.11.36E93FA Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by imf20.hostedemail.com (Postfix) with ESMTP id A65E11C00C3 for ; Thu, 15 Sep 2022 22:51:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1663282264; x=1694818264; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=QNko31aa+FdmahYizNR0c8/KDKNLEIInUJRVx5w8ciQ=; b=lgybgPh+OUJPm5exsyLaSzH9NY3lq7PkG4GAm8inUDts7XSOEFdeKRzr uPGO1uKiM2Fcafi0MiKXWPXayQyNcAUMKxCp3pdNBLCYRNSjk6+B1GMUR tw7ewiJp3tBrhqV552rFFc2kmbVokD+PXvEAqaTCIZk1jdiqzoomGW081 sp4WC+5idDw6xgLKGNya2gmKnHotc0KoByS9Ip/Z2Df4afTBhTFvTcg1H JIFIYtNrxowPj6lL7kEoAI8ZY+7k2tYGK4EIFzL9WYYMc0t092/4ZQYlU Z7d1odL4RAOLzLxMStJES1LeQN7rx4O7/t68zoAcKKXPQjBmP/WTs85hD A==; X-IronPort-AV: E=McAfee;i="6500,9779,10471"; a="325123670" X-IronPort-AV: E=Sophos;i="5.93,319,1654585200"; d="scan'208";a="325123670" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Sep 2022 15:50:50 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,319,1654585200"; d="scan'208";a="679732855" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga008.fm.intel.com with ESMTP; 15 Sep 2022 15:50:50 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Thu, 15 Sep 2022 15:50:50 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Thu, 15 Sep 2022 15:50:50 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.102) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Thu, 15 Sep 2022 15:50:50 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=E0D+iyork4+8c84X41yJ60SR+oNp2NoM+CzawcWuOqsC1eU7SOBvZ9VV1N3i85RfOh3DMWOoRIbAbbBrRx976vORGHMrMjUYD3w4gUrNHs2GoqlJ5Gq/E/Bk9ld4+TjFGW726vYz2dOhRQ2WTBlSQPzi/EvEPVEtsY8zzFRooENGt9RLuObM173WOBbdaCclTLt11uq2ecVLHJoBwPJRUgHPkffCB+ttU1ExK3nPOxD5hnwSwt29MacrIIs9RL1SPZswFm4OyQFX9YR/iJhyI7G6nv8hxm2Kk4/HOg7omOaZw/q6BVa/A1r6BZUo7h8ial47nemmPoVvQiLKYVPumQ== 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=QNko31aa+FdmahYizNR0c8/KDKNLEIInUJRVx5w8ciQ=; b=B3L6CjUYpJhA/4whKZUT02XzMQyfdeUu8aeYtFzcfHUXrrA9fV81r5Jb/KL4qQ+XheDf5FOiH0jOyBUuh3WGrndAy0dur16zy72pF+vN1eEmHzN8zqS6bEgReVrFDaEzrPjZAIzNBBvoUyWZsbq2pHgETRsDby/nF+oRJV9FMjWNy5gEGyvgTETHSOnRZvex8dEUho8/4qJJFY6NHXrPxuJ1UBWHWaC96EUl5NtUWdEYiYSCEUWZuYCz/21bxRhLg796uhsQ5rO2pVWqR0dZ05gTheGmyc+6OxXcsRci0nv5KvvfXMUvMstuxyWNFl9bbZVhDd43NCzilUu8pgf50g== 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 SJ1PR11MB6083.namprd11.prod.outlook.com (2603:10b6:a03:48a::9) by CY8PR11MB7105.namprd11.prod.outlook.com (2603:10b6:930:53::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5632.15; Thu, 15 Sep 2022 22:50:48 +0000 Received: from SJ1PR11MB6083.namprd11.prod.outlook.com ([fe80::10a6:b76c:4fb1:2d60]) by SJ1PR11MB6083.namprd11.prod.outlook.com ([fe80::10a6:b76c:4fb1:2d60%5]) with mapi id 15.20.5612.022; Thu, 15 Sep 2022 22:50:48 +0000 From: "Luck, Tony" To: "chu, jane" , Borislav Petkov , "djwong@kernel.org" CC: "x86@kernel.org" , "linux-fsdevel@vger.kernel.org" , "linux-mm@kvack.org" Subject: RE: Is it possible to corrupt disk when writeback page with undetected UE? Thread-Topic: Is it possible to corrupt disk when writeback page with undetected UE? Thread-Index: AQHYyVOZuHnP7uLChkm+T/SiMC7uC63hFndw Date: Thu, 15 Sep 2022 22:50:47 +0000 Message-ID: References: <44fe39d7-ac92-0abc-220b-5f5875faf3a9@oracle.com> In-Reply-To: <44fe39d7-ac92-0abc-220b-5f5875faf3a9@oracle.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ1PR11MB6083:EE_|CY8PR11MB7105:EE_ x-ms-office365-filtering-correlation-id: c6bda370-e8a3-40a9-30d6-08da976cbb3a x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 2RxgtJYGvpxxZe4Xl1EiuN8t0Gi4LdaPNZtQ3FZwF1uZFFQr8IujXUpX+Bz+1XYhs4ePWeqjQlN88jI6z7dJRmzrw/bvx15j0ChJ3T/9FjNDYd2GD+8PGA7TdpW9tRvWBBVUhd8BdqbLsSBbrPST1M16wjf6jmQ73mQMdexArjoUwGYcpfLE7jJOa3QGJIsSYvC6QBLd0i02x1uK967mkP0ZY3R/RiTWKF/pmu0olVe2CZd3QOjFjW4MiuZPmep4sOUgujXANJrEG3yYWt4CxH6phXl5fpDNzRyifXy1X31sJFYkjACXteQFfSX/RNUiDotQejFeS1IN2Km44Q0ytTLSbZcyWbpwW4JcVAlaf/yV3TXgz8/tbs5iUfmRGL2rZkAu1MY9iF09E2LKeWoOgFiD3R7CHiYHVz5ECEno8RoLeq+0P9Ikq/W5ZHRjQIOLvcciemhULq94A8YxBoPHx0EOD3BBgGsIpac2TJN2S63TyvpFKmKqzEh+dawj1nAO9vshfFQ2cj4Qoo0yVXV66tJUe2z4HLrwi11T0FF9p/iTpZwAN1lo0D7pSnDMuZuC5FldcGOF03/xqE7SRu0HjNKtoJjdJd2aV7w9TvD0x9T3XKDgd2k/TkVGUo3w5MDrEkutE3YKwjUTh7W/VXYTifnWIDGWRKstgwMGppoP7EFv7RwilT1f15xUhNXdvMEIvRLlmwT/llDqtx5hXhWFLLmpLWcgx//fMGpecyJnwR0hKApkIXgCo7KHPRoLBdpeo3UGughFld6JJUvaKxbcSg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ1PR11MB6083.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(346002)(366004)(136003)(39860400002)(376002)(396003)(451199015)(66556008)(54906003)(8936002)(4326008)(66476007)(66946007)(64756008)(33656002)(76116006)(2906002)(66446008)(41300700001)(316002)(8676002)(110136005)(38070700005)(26005)(186003)(9686003)(83380400001)(478600001)(6506007)(38100700002)(122000001)(82960400001)(55016003)(71200400001)(7696005)(86362001)(52536014)(4744005)(5660300002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Mm5BajZwTE9uY05qbUhyZTJHYjE0a1RaeFpISStSMWU5NDlieW9OK2F6SU1X?= =?utf-8?B?eFR4M2JleTA1a3FhU1I2cHlNYmpxN1o4TjRjcXVTOXUxeG1nUGpSZ1ZiamNt?= =?utf-8?B?ZDhNSDMxTTlOMDdaRWhCUCtiQk85eStFMUlOQytValRYaEpTbDdCa2RmTHhO?= =?utf-8?B?V2Z4OUVYMzdNb3hmZFdjSU5hRGdaSUZkNkcvUE11eG4rL1lFSXdFYng5T2Vv?= =?utf-8?B?eXZNQ1BHWXc5RGZ0czVsUGZEYm1KQUpBU2VqWjFDNE1udjF5aWN0UXZSbEY3?= =?utf-8?B?NHdtV3hyRHlVcUNicDhmbDdNejdJczJVK0tUSE9hMzZoTnVtVlNpKzVDd01Q?= =?utf-8?B?VzlEdlRuY1lHNGpqMkZJSG1rSmtRZWVwbVMvanhaZE5uT1dYUHhFNDhsTlNt?= =?utf-8?B?M0V5MklqaGJGK1kzcWpLM2M5dENEdEI3WnZId3lGYi92S09DOGpONTJXWHBS?= =?utf-8?B?ZGE3SG9hYk9SV1h5WThoNXdrUUlLOGo4Zkx3MG5rcm5ZTCttVnkvYTkrSXRG?= =?utf-8?B?VEQwc0QvWFJGTFhKT2dXMGFSVmlqdVYxRGtmaFhlL210SkxUMko3Nmx5ZWpk?= =?utf-8?B?NlYwWG8vak5WUU03WHNPR2Q5bWNVOUdjVzAwWlFHQzV2c2hxbTFFT3FpVERa?= =?utf-8?B?UDU5bmtGZWJKYWloTUhUdTlhdE4wOUVRU003Nmg2eFpYU3NGQ253dEtPK2xy?= =?utf-8?B?U0VKTG9HalQwVWtESkRjZEViazBmZUVmU3czdHhyUFlZOVM0TG1SL2NNWHJ0?= =?utf-8?B?WGs0aFMyeTd4Qit5SmJ0c2F0Wm9pRWR2YmhBRVhGVVNXbVNyRi9WYXJIWkN2?= =?utf-8?B?Ni9KTDh4SUx1VnRNZml2VHZCRnNZWVdzQW5sTnE5UE5IT0phams5TjEyZytS?= =?utf-8?B?SnZJOUJLbStqbmo2cEwvUnlMSEtFMUdQbGpCc0UyUkt3bnN6Q3BIV3FacFFU?= =?utf-8?B?NVpSTnBic2R6UXAyb0sxc3NuK0RMUGhxamJKK2ZJVGdncWJTb1NVb1J4Z3VE?= =?utf-8?B?dTAzYzg3blZhQnNtYlkrVUdxVlFhK3kzZGNCSjNtdlUvckxGVnN2czVzVEVR?= =?utf-8?B?eHpFbmdJK1RUUWhBVTFEVVhHY254R3JoRk4yQ1d2K09TbVZZaVFaekZyMDFH?= =?utf-8?B?QkZHemtOQjU2NWpNRzA5YVY2WU1LamhWN29oZkRXTU1EVkZXczRoUXJDcXNI?= =?utf-8?B?SGRiTnZMV0xZMTlqbFBlRmxlc1d1RmpmeDU1c0VpN3hHU1p0Z2FEY0JjZ1NW?= =?utf-8?B?Unc2Z05KMmtHbE52ZTZDeUdrdm5IaS9UcEl3MmFJUmRGcEpSS09rUlFlNURF?= =?utf-8?B?cjNKWmpoeGFEdnp2TStuazErTFZNLzRObm5vWGZnaVAxVjI2VU9PaTBTQ0sx?= =?utf-8?B?dWJWSkxLb3VqMUc4ZDhieS9wSUR1VEMzcEQzZVpjWXdBK3JQallqd3VpZW1R?= =?utf-8?B?VkRoSHhGaUhwTGxFdHRaZTRCVFpKL3hhU3NXajJRcjBsRUZoNU1SMnQ0cGtF?= =?utf-8?B?MXBjMVFJM3diYWorT1o3aFpDMk1XWDh4cHlTUzhHYS9sb2t5VXVBSnVkUHZp?= =?utf-8?B?K241NkgxQ0s5a1VBWmdudTIxb0tnais1SDFNeTNSVGNIbkZzQ3lFSFRia3hT?= =?utf-8?B?WWQrYVR1ZEZ2dER3QmpiMkpVSUlJTGdmSjZlOEM4cFFBdUJUWTI1ZnhmK0tu?= =?utf-8?B?TjFteDkwK3B1cGxDVzBVOUI2cjFieG5yamt1SWE3SlhxUVZoVUx5OHhYM0Va?= =?utf-8?B?K2x1NHQ5YVdvZjBlcjh4R2ZKK05hMTJrdHJKYVJ3aEdPVEF4R2NKVFVUYTd0?= =?utf-8?B?Uk1ycG4wMXVld1FvNGlrSS9MbnplU1pTSitKVVlUWFZDRnNaUUp5OEdVUVNT?= =?utf-8?B?SEdRdjRxK0k2L3NzZDY1QTJzL0prd01QaHJXY21ka0J0ZFhXWTI4STN3ZkpT?= =?utf-8?B?bXF6OUdLSXJncmJWTTlmSVVQYmZHOWdyYitiSjR6K2thdjMzNm5BWm5Ya2h0?= =?utf-8?B?NXNnTUNXZndVU2tHSlNLZytsTmFKMDZrWUFWSXdqMTFkR1FSbjloeGtTUlNK?= =?utf-8?B?WnNxenAwY1Z0Q1R6UHFXSTIrKzZkOEJmRUQ4WjBneTlucUxIVk4rMmVwMHds?= =?utf-8?Q?8FfjpkbWywALXhsjnGABll/w8?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ1PR11MB6083.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c6bda370-e8a3-40a9-30d6-08da976cbb3a X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Sep 2022 22:50:47.9449 (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: o2So2mVZpor+DuEd8lTKWHcxuBPZlForLYiBKiRH+lGtT1Mb7FUhS7kOKKgxG0SBQlc7N/kPgEuWWRrs6a/NQA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR11MB7105 X-OriginatorOrg: intel.com ARC-Authentication-Results: i=2; imf20.hostedemail.com; dkim=none ("invalid DKIM record") header.d=intel.com header.s=Intel header.b=lgybgPh+; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf20.hostedemail.com: domain of tony.luck@intel.com designates 192.55.52.88 as permitted sender) smtp.mailfrom=tony.luck@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1663282265; a=rsa-sha256; cv=pass; b=Vx9Y/aN5r6wXFzTA0+QvFu/w/Hmn9B5aRynDyd3Hl70LzSQ0ppECz7BcM6iev10qf0+xzr G+pU/MTAE6Ks8Aw6BXWFzS+wS2oPjV3VOaZJNDWiqGKVEIgsNMmtGSTZJozyHaxExqcdeY 9hMkOb+5HId56hmrUYyZDsO/OzVrzkg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1663282265; 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=QNko31aa+FdmahYizNR0c8/KDKNLEIInUJRVx5w8ciQ=; b=gzqBAPvkTDbP6EjjI/lkFqqE+RNDlYoUiLcSVSfaypRGrA+87HmPq74z7xwyM3/GhADW/p 1WFXh6saj2fKTjvGRRCpw+QPKZOq+Rzcmh3A7j4Trryprt+yI8vyrQ33ATE0opoYEYLqmq ZkWtO8tGJgLhJDkpEKje9hyw6cQ2Ks0= X-Rspamd-Queue-Id: A65E11C00C3 X-Rspam-User: Authentication-Results: imf20.hostedemail.com; dkim=none ("invalid DKIM record") header.d=intel.com header.s=Intel header.b=lgybgPh+; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf20.hostedemail.com: domain of tony.luck@intel.com designates 192.55.52.88 as permitted sender) smtp.mailfrom=tony.luck@intel.com; dmarc=pass (policy=none) header.from=intel.com X-Stat-Signature: esrzf734rmx5y3mtdg4e9mmrfs5sz3kt X-Rspamd-Server: rspam04 X-HE-Tag: 1663282264-817124 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: PiBTdXBwb3NlIHRoZXJlIGlzIGEgVUUgaW4gYSBEUkFNIHBhZ2UgdGhhdCBpcyBiYWNrZWQgYnkg YSBkaXNrIGZpbGUuDQo+IFRoZSBVRSBoYXNuJ3QgYmVlbiByZXBvcnRlZCB0byB0aGUga2VybmVs LCBidXQgbG93IGxldmVsIGZpcm13YXJlDQo+IGluaXRpYXRlZCBzY3J1YmJpbmcgaGFzIGFscmVh ZHkgbG9nZ2VkIHRoZSBVRS4NCj4NCj4gVGhlIHBhZ2UgaXMgdGhlbiBkaXJ0aWVkIGJ5IGEgd3Jp dGUsIGFsdGhvdWdoIHRoZSB3cml0ZSBjbGVhcmx5IGZhaWxlZCwNCj4gaXQgZGlkbid0IHRyaWdn ZXIgYW4gTUNFLg0KPg0KPiBBbmQgd2l0aG91dCBhIHN1YnNlcXVlbnQgcmVhZCBmcm9tIHRoZSBw YWdlLCBhdCBzb21lIHBvaW50LCB0aGUgcGFnZSBpcw0KPiB3cml0dGVuIGJhY2sgdG8gdGhlIGRp c2ssIGxlYXZpbmcgYSBQQUdFX1NJWkUgb2YgemVyb3MgaW4gdGhlIHRhcmdldGVkDQo+IGRpc2sg YmxvY2tzLg0KPg0KPiBJcyB0aGlzIG1vZGUgb2YgZGlzayBjb3JydXB0aW9uIHBvc3NpYmxlPw0K DQpJIGRpZG4ndCBsb29rIGF0IHdoYXQgd2FzIHdyaXR0ZW4gdG8gZGlzaywgYnV0IEkgaGF2ZSBz ZWVuIHRoaXMuIE15IHRlc3Qgc2VxdWVuY2UNCndhcyB0byBjb21waWxlIGFuZCB0aGVuIGltbWVk aWF0ZWx5IHJ1biBhbiBlcnJvciBpbmplY3Rpb24gdGVzdCBwcm9ncmFtIHRoYXQNCmluamVjdGVk IGEgbWVtb3J5IFVDIGVycm9yIHRvIGFuIGluc3RydWN0aW9uLg0KDQpCZWNhdXNlIHRoZSBwcm9n cmFtIHdhcyBmcmVzaGx5IGNvbXBpbGVkLCB0aGUgZXhlY3V0YWJsZSBmaWxlIHdhcyBpbiB0aGUN CnBhZ2UgY2FjaGUgd2l0aCBhbGwgcGFnZXMgbWFya2VkIGFzIG1vZGlmaWVkLiBMYXRlciBhIHN5 bmMgKG9yIG1lbW9yeQ0KcHJlc3N1cmUpIHdyb3RlIHRoZSBkaXJ0eSBwYWdlIHdpdGggcG9pc29u IHRvIGZpbGVzeXN0ZW0uDQoNCkkgZGlkIHNlZSBhbiBlcnJvciByZXBvcnRlZCBieSB0aGUgZGlz ayBjb250cm9sbGVyLg0KDQotVG9ueQ0K