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 AD93EC64ED9 for ; Mon, 27 Feb 2023 23:09:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 14EFC6B0082; Mon, 27 Feb 2023 18:09:19 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0FF126B0083; Mon, 27 Feb 2023 18:09:19 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EBA876B0085; Mon, 27 Feb 2023 18:09:18 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id DBE976B0082 for ; Mon, 27 Feb 2023 18:09:18 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id ADBC8AB07F for ; Mon, 27 Feb 2023 23:09:18 +0000 (UTC) X-FDA: 80514614796.13.9174DD7 Received: from CY4PR02CU007-vft-obe.outbound.protection.outlook.com (mail-westcentralusazon11011005.outbound.protection.outlook.com [40.93.199.5]) by imf25.hostedemail.com (Postfix) with ESMTP id 7099DA0004 for ; Mon, 27 Feb 2023 23:09:15 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=vmware.com header.s=selector2 header.b=dIXQQbej; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf25.hostedemail.com: domain of namit@vmware.com designates 40.93.199.5 as permitted sender) smtp.mailfrom=namit@vmware.com; dmarc=pass (policy=quarantine) header.from=vmware.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677539355; 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=MJMt0vQCd8fH48l6MT43aEcoI8Cu/Kk2h/+dNR4KI1c=; b=wBC9BUHXAy5mLNdRmKyKUDTo8vLiYZO0Ud4AVQ6MjxKAGP1El/r9vvnZpMAObzNRu83ZP+ UBGnNDvFq6Uw+1Farae0s4/RtLYsduAB2XfT1fZzMZvZydcWYi6TyKJEc3n6/1Mr/mx4mt r2bH46jF4HmwmVxvz0bBJk5as7EREaY= ARC-Authentication-Results: i=2; imf25.hostedemail.com; dkim=pass header.d=vmware.com header.s=selector2 header.b=dIXQQbej; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf25.hostedemail.com: domain of namit@vmware.com designates 40.93.199.5 as permitted sender) smtp.mailfrom=namit@vmware.com; dmarc=pass (policy=quarantine) header.from=vmware.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1677539355; a=rsa-sha256; cv=pass; b=dtz2bhwUraFLuTI/IqoI5qQQAxl4idVjjd/6we+JR+KgvYaPIL2ma7u4v+Yb8C6VZz2FFH 7TQqFR7HWwkCg2/js979rW2XLXL+5tZd1AF17qBYRnm7dpYRYUkMrAXFbuigqkXYh/sCrk EBRVg6hDjBgk0THZUXKHjf2eBdE7mco= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VO/TC+IHRl6eVManlQpyGPaeOiptKJd1WvzAcApswlFhYXwUpmCK0pYOjAHxeZmw8319plVy0a9veMJo1paeMvubQ4sDputXI/Lyys68HIdfEqrIXMNh5p047K8Hb3JC38N5je+5SX/yaJdJnt2r7OPHM1HdyoQZ5Bwp+Jdyb9uEDXP8Nmm36PFBZLtWEqfiivI199OLkW2+ljY+i/QtVfSq3QFFSIMnG8CiovWZYbIgE/wCT4VI6fq6nli2vo+KXmb6gQdQRjemcf58hCdyd79OvBwagtij0rl7CAaIaSOThbAoR0ozEwcAVr8J4ojMTpwx9mCu7OYRGMjp8yR9vQ== 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=MJMt0vQCd8fH48l6MT43aEcoI8Cu/Kk2h/+dNR4KI1c=; b=NKwA634WTz7w8YUZ6wT5lOvXvmm9HoaEUdES6lI82mTiDV+kQchv468T8KYqkIrZFiUm6V5vUTh755vJGzZ6ROjMSczQfIqo+DqADZs4S2GDRAhmQTrtiUbhQT1oAdtrHEcq5Tayvma/w0T9LFVtIuabLQWdn7IMKhtehhOrowCMBufy0VX/NkjQAwnxgwt0WIuFC5wIpdEIc2+HOldX1YA5ICpsYQX8jkYFbI1D+fDZGzHJIL8GQqXbM/kKjArx4XHB8u/N9oyFCbwlVgt17FQqVSSoG833OM2NU7u3MwMLnzh5aj6/7ILxQnhjR2PzFZSHdQl2Ax+3/e5TLZDgwQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vmware.com; dmarc=pass action=none header.from=vmware.com; dkim=pass header.d=vmware.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vmware.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MJMt0vQCd8fH48l6MT43aEcoI8Cu/Kk2h/+dNR4KI1c=; b=dIXQQbejydgMKhH+/kbVntzqZ5vayljbMAemyRIvi5Wrmz2XkRtzgkgfbTXqpZma9ibFJTcMqmCe4w+FZw3t/vJ1kAlf7TVECkO6jECqNeE6Ax6yb5S5Hpwsy5sL+jjytbGDB1urPqQdU+BZLRFlVzCif2DNLkMln0GUdsUn+9A= Received: from BY3PR05MB8531.namprd05.prod.outlook.com (2603:10b6:a03:3ce::6) by SN6PR05MB5728.namprd05.prod.outlook.com (2603:10b6:805:b7::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.29; Mon, 27 Feb 2023 23:09:12 +0000 Received: from BY3PR05MB8531.namprd05.prod.outlook.com ([fe80::e9bd:ef2f:b71:8084]) by BY3PR05MB8531.namprd05.prod.outlook.com ([fe80::e9bd:ef2f:b71:8084%3]) with mapi id 15.20.6134.029; Mon, 27 Feb 2023 23:09:12 +0000 From: Nadav Amit To: Peter Xu CC: Muhammad Usama Anjum , Mike Rapoport , =?utf-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= , Andrew Morton , Alexander Viro , Cyrill Gorcunov , Paul Gofman , Danylo Mocherniuk , Shuah Khan , Christian Brauner , Yang Shi , Vlastimil Babka , "Liam R . Howlett" , Yun Zhou , Suren Baghdasaryan , Alex Sierra , Matthew Wilcox , Pasha Tatashin , Axel Rasmussen , "Gustavo A . R . Silva" , Dan Williams , kernel list , linux-fsdevel , linux-mm , linux-kselftest , Greg KH , "kernel@collabora.com" , David Hildenbrand , Andrei Vagin Subject: Re: [PATCH v10 3/6] fs/proc/task_mmu: Implement IOCTL to get and/or the clear info about PTEs Thread-Topic: [PATCH v10 3/6] fs/proc/task_mmu: Implement IOCTL to get and/or the clear info about PTEs Thread-Index: AQHZNvnMjIrwR8b570Ch3VOm2txWlq7WZLkAgAGKnwCAA4VRAIAAyUIAgACnuwCABo50gIAAHuYA Date: Mon, 27 Feb 2023 23:09:12 +0000 Message-ID: <5D5DEEED-55EB-457B-9EB7-C6D5B326FE99@vmware.com> References: <20230202112915.867409-1-usama.anjum@collabora.com> <20230202112915.867409-4-usama.anjum@collabora.com> <2fe790e5-89e0-d660-79cb-15160dffd907@collabora.com> <751CCD6C-BFD1-42BD-A651-AE8E9568568C@vmware.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3731.400.51.1.1) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BY3PR05MB8531:EE_|SN6PR05MB5728:EE_ x-ms-office365-filtering-correlation-id: a68cf528-f99f-4480-a03b-08db1917a37e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jXww2Oa0hEKzgYP26Ikqzv41+XKA1j0vskL33rMxlxtYPu9cUG93DH5mmRnmOkdLlwtssca40oWMoPy0YuDRlb79UqcKPSd2io6B27HkjwqPokgFDxPqwTdPTaeT3VSGWFWq1yE5GySef7LuSKHS6eG67TyVn28DIATDvMHDewCUO1+Ywbkyeuqg+SfJMliS1Woxvq0/Crq3MVc7PiMA9TuijmqCwbk9QJSysZHjNY7ZjxY3SR1/Rh4jg4O1c1UK1Hmh3Q7iYK1ibiJ8N1bcJXd70WcODJ0UwoADkMlCCL3zz/eH8eYvF8Ex664oxNWWyrXyJyP4zJozxRX2vlVL5UcgNGo/j4aPYxXTxfLC61GW4fKev5l8zIz1OoPiGRBW1o6MfzwQqTajac1MKIJMFA09R3ur3W1kLgYRY9jF3yikZVYGMi6C4wBetzksIADPA4t3rlYBSx+0ZYWplLI2Q7kMgSUsdEA3oXHUhgzzpMg914ZW4LVilH+QsNE4cIibvogPCAz86p88VCP78VDZdzs08LZ41+1YtxYvJA2F0Vyw0SKfi9tp2wKyKvaEx+izd6ZHocPucL+t2DU8QLi/Pk/m05vqWxy3LxqfC8hjtp3DDc0P5/y2/y6viFetj3ca7wbJggvjAtGg6LYKrcl5Ox5H4Wcw/tIPaN81dMRSPa1DJ2tv1vo1y7WOyy35jPwn2dbq80y1ovESgI6s2+GkkD1zVsx7Jq4NXMywsLOeD3Q= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BY3PR05MB8531.namprd05.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(136003)(376002)(366004)(39860400002)(396003)(346002)(451199018)(478600001)(6486002)(2616005)(71200400001)(53546011)(54906003)(316002)(186003)(6512007)(26005)(6506007)(66556008)(66476007)(76116006)(64756008)(83380400001)(8676002)(4326008)(66946007)(66446008)(5660300002)(41300700001)(7416002)(7406005)(8936002)(122000001)(38100700002)(6916009)(86362001)(36756003)(38070700005)(33656002)(2906002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?aWdlUDE5SHlRb011OVlEZCs4MTlubGpUazNPZG9sM2tpWkRXVm95VGdjRjB1?= =?utf-8?B?NlFBR2g1SmRSZitGQzBrM2FMcU5YWVpiY0ZCSW91Q0tHZCtFUE1DVW1lUGd4?= =?utf-8?B?UWxvMk5BVmk0UkNqRURmM3hqYnhGbGpCeG1QYkFyVlhaYkVmaVlNS05xMmdP?= =?utf-8?B?WTR0QmlOR1R3cTh5dzBsSDlmWGx0WUxpT2k2OXNZamVscE02RTlwTHpxTFNQ?= =?utf-8?B?NjZ4a2ZGRlpNNVhkSzlXaVZvMnFlMHYxekoycmVsRjVsWG9SeWlqT0xVd3lK?= =?utf-8?B?VVZYN1QwUzljNXhGbVN2Mld1NmRqTmh2SFVqUTlDRTdGeUFqODBzMFdlM0lj?= =?utf-8?B?WExUbjQ2QU1WdTdTZ3gxTnpkQ2crK3pIYVFnc3ZNcmhCNkxKeUlDb3NJT0hR?= =?utf-8?B?UWtzSktrTm1KNCtyc2pkY2d4eGxUbTMyZG5SSzlqT0JDRHdDRkpmQ2F0Q3dw?= =?utf-8?B?SDR5S0tXd2dNVml3ZnFEaVFwWStBQ3kwUC8rOTRQU3BZNG9CVFcva1JhOHc1?= =?utf-8?B?YUtuK1huVWp0UDI5aFBwL0YxTzIzYzA1Y2x5RGRQRTFNem1sL0gyZ1pPQ1RK?= =?utf-8?B?OUMyNzJmUWJXeE4yblR5RlUvM2k4ZXdIOFRFYW5yREF4WXd4SFRRK3I2dTlp?= =?utf-8?B?MGRScVAyYXRoRkZYMGREdTRvMGxQaUsrdjFsdUJEczRuQUhwZ05YTUk1MC9Q?= =?utf-8?B?MkFZQS9QVFNqZm1pWEM3M2VOWVg1NGZsZkNEVUMyV2UrMklXc0FKdmU5dlJD?= =?utf-8?B?MllwM082cWhxMXphSEVQZTlvTmcrNWFGTjN6NXF1Unk3b0dEZTY1RUxpcWxm?= =?utf-8?B?SDZUTFh5ektISVBCMnV6TjJhUm9XWHVYeWJhbmVxVVArUHhPOWFSZ1VrTklC?= =?utf-8?B?c3g0cSthQWJDelkyRGJhdWdidWdVYTBNR1doN2tPWWRWbnBoakM2cDBrcm5O?= =?utf-8?B?TzRUZ1BXN1J3VFZxQUNxVmtZRWxYN0VIaTdWMDNzZmtURGxRKzJVQUJCbU5v?= =?utf-8?B?d09uNEQ5Z0hYQW5jeWZUY3pxc3YxY21BV2VEL0pvRUxMYzNON3VOT2g4OUV2?= =?utf-8?B?L0tBTStiRmdWSUcvMlBSN3JXbm5mVzNFaEQvaTV2SUpZTzBxekprSXQyb1pS?= =?utf-8?B?NU5nQWJ6UlJybkJMMWw0OWVIWUhsWFkwNzhwQTI3Q2Rxa0ZsSDErYXhJVGNQ?= =?utf-8?B?cGFmTHNDU0hCY3lrWStMR3NLK0hOY1BVUElXaGNLakp0ZjQzZWkxQnlQQVFW?= =?utf-8?B?WDBmQnB4M25ZK3JhL2U2VmxBSFBJU2Y4cFZKY1lRdmRGMXEwU0NLengzQ281?= =?utf-8?B?blBEdzVpV3VDZW9jaGovZGdDYkJ5TnpJV09FK3lIWWNZV2tUVndEaFVaSCtX?= =?utf-8?B?M21IWlhvSjJyUUFPZXZlR1RNUTNNQ2lJcEtudWlaVVZPR3p6MERxWURSOVVu?= =?utf-8?B?VVhlSGRnZEhKOWZxWnJ5dTlsUUVvK2M3N09HbTRxQUlodFl2ZG94SzNHREhs?= =?utf-8?B?ajFrL2lEV2dvemhOMUwzN2RjTzdReFMzWjlrc2dTdEt0MEF2WFllUVRoVWJo?= =?utf-8?B?M044bFFSWUZRbE9NeE5KRWgzc2hnOTNUNU1OZ3Jycys1cmhCZmdtRXZWZXRO?= =?utf-8?B?aURJTXIrVVB2Q1RIWHZHamZ5b1JGWlY5Y2YwVGpqaHU2UGdKR044WjZuaVdS?= =?utf-8?B?RVVTT1VsamFVTE84RVYyRlZSeXhjT2F1VjlNVVJGeXFtM3lPUzlWd2gvbFBv?= =?utf-8?B?bzJYLzNPMTZaOHMwSlVjMmZtRGxNWFFuS2o4dnBoSkwwdkhVendYb3I0WDQ2?= =?utf-8?B?UXBFVnB6OGZkaWpVNVNWOGJjcjBjYUgzalZ5TytsVGF4UWRpb1dHbDg0TDJw?= =?utf-8?B?YzQxN2t3SGppQkZ0Vk1HTC9nRlpzKytNT2xnVlFZOSsrTG9pbEZDOWpIQVdj?= =?utf-8?B?Tm1ta29vUmFkeDRmQ2s1RWo1WWdUeFBINnBBOEtpQlY3bnBETElwSkhlamIy?= =?utf-8?B?czVpYlR4OHA5Nzd4L2FiajJjaVdDZ1g1SkpiZ2sxUXRLVGZ6ck9JRUhTR3Zl?= =?utf-8?B?akpad2JUandtZnkxenlPeFdsNVVqcEJ3SlFRVndIOWhnM20wZWJqaVJzakV3?= =?utf-8?Q?sCpo90QQSwNGLY+H1rd+2SSdF?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: vmware.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY3PR05MB8531.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a68cf528-f99f-4480-a03b-08db1917a37e X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Feb 2023 23:09:12.0671 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 1QEK/4SAe5joSfpnQLWlCtf0YUEtWNIiOKQGWrW9MYcTIOO5M1H772Mw085OW2O+hiZZFU132w77EhuZ+w1Cjw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR05MB5728 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 7099DA0004 X-Rspam-User: X-Stat-Signature: etkc6ech68xoh5g8ffaz8oqq8ad61fob X-HE-Tag: 1677539355-53887 X-HE-Meta: U2FsdGVkX1+JS1jwE8It0Z18v7jaweVmSPtxyPpU3AMTvVO+J5bwnLbmppOXQ/38VQKmHn6nvrfRjOUcrC/pxL3xCW+bgeM3K/fljdyaPduiS+iPbNiRy/urY0Fe+8cXcfcDdqPQV8waQlLsWp00lKTUftlKQBh0Re291rdnXgAf0kGyTn8MZbko5fx0QSjQHIXZrOXdIR82ivRjz9HpGUSrbZGvQRMj/YiyXMTKGBcdd+GrAsnMoOU9J2SUEqVTL6RwSHXYGx8leWHDCnvJHsIZ6K2iPiSjO0WYdNrKXWtpBX64If66Q4re2cZZifN5nDoB0RPwFO5nM9uqpqVJsEPppaLdPUUnzO+l/4MQgLwkd9hvk1xuyQpZGAJTbe28OmFSkbMYpTAf2IEFthecj6AJWe6AOgS7tkSyYQCj9ZjPUX+xxFbtWP516DpWxu75fM8hlBiFEp5irevSzh+hhudi++C46pbnwYqHa47LYbZbbYlNBiDzY7PE5aOEeV9CxqkkFaKYvoOwGcJuBdQxWQyVTPiDk3yWhcEV6GiS+o/7t+/QBjQ4bui3/BPEo/ljF8Ax0ttYRPUgtFsXyXYNwd5sPVv4YS351FcMWKdwOHxmNyTB3/qr8x9AsMK+jOvtgVhhrw+eOOR5/PCeFeX6j5rFRPmII+MYrv2cwprDrMsf9J8vs9SnL220DwrQ+fTlXO+L4kokAv7ITJ+cXoucjUyFKMNbv998P+ZNTkIvHevYWGDBR88MQhuZd1dqwQ2XoYidBuIOltkcPIe38NTRg8j+UD1zIa8cnh/VLzH9AK89NjJmqS68gvgO6ES8+3uxuPRkTaxjDDsI15F21AkQAz5ow77tLArSW1orDqLgxbH8+hlSL7vIgI3NZwCP2CZ2E0vwW60hyB5L1R3eVWdZNChcb7YtdInX8sC18rufsCbxK3M5Q1eycfKMrXSm0g72V675EQcC4dp11MjmBxI hhPbn185 dk5Dwez2WCDR2O+eH/kTU0WDJFZzGAFXCESk0qTMOmM2maVuuoOkFCKsALNnusDFTQ1Q3lzjwV7CvPyv88QbXjxBcADA9JeSArimgBISIAVuu9iKnDz+8iu4Yuu4+bpsx/KdzF3/BEG4BZuJUZOJ5vcI6UXx9jaUxv6g8M8z+QGJRpkiRNaL5QuJBIN5satkOspUOpR8c0cJ1xH5g0svtTvoNqMqILjoAXj41m9hbj6SotB885QnwVq0xFF3dozft4yDmczfHFa2lRtImIyrvMZC7OhP+LQJQRfb8Jn4YvcQjJsqOPzrR43XcOV9HnD1nxRKrTarRLBuPnM7aALlCLTNLS+kxiJCbSZ6NEM+hhJ5dglAgdDcigyri8+0mwHG+p+I591bVCZ9QAAsJZg9tYCaQqF0lG6nEeT7R 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: DQoNCj4gT24gRmViIDI3LCAyMDIzLCBhdCAxOjE4IFBNLCBQZXRlciBYdSA8cGV0ZXJ4QHJlZGhh dC5jb20+IHdyb3RlOg0KPiANCj4gISEgRXh0ZXJuYWwgRW1haWwNCj4gDQo+IE9uIFRodSwgRmVi IDIzLCAyMDIzIGF0IDA1OjExOjExUE0gKzAwMDAsIE5hZGF2IEFtaXQgd3JvdGU6DQo+PiBGcm9t IG15IGV4cGVyaWVuY2Ugd2l0aCBVRkZELCBwcm9wZXIgb3JkZXJpbmcgb2YgZXZlbnRzICBpcyBj cnVjaWFsLCBhbHRob3VnaCBpdA0KPj4gaXMgbm90IGFsd2F5cyBkb25lIHdlbGwuIFRoZXJlZm9y ZSwgd2Ugc2hvdWxkIGFpbSBmb3IgaW1wcm92ZW1lbnQsIG5vdA0KPj4gcmVncmVzc2lvbi4gSSBi ZWxpZXZlIHRoYXQgdXRpbGl6aW5nIHRoZSBwYWdlbWFwLWJhc2VkIG1lY2hhbmlzbSBmb3IgV1An aW5nDQo+PiBtaWdodCBiZSBhIHN0ZXAgaW4gdGhlIHdyb25nIGRpcmVjdGlvbi4gSSB0aGluayB0 aGF0IGl0IHdvdWxkIGhhdmUgYmVlbiBiZXR0ZXINCj4+IHRvIGVtaXQgYSAnVUZGRF9GRUFUVVJF X1dQX0FTWU5DJyBXUC1sb2cgKGFuZCBvcmRlcmVkKSB3aXRoIFVGRkQgI1BGIGFuZA0KPj4gZXZl bnRzLiBUaGUgJ1VGRkRfRkVBVFVSRV9XUF9BU1lOQyctbG9nIG1heSBub3QgbmVlZCB0byB3YWtl IHdhaXRlcnMgb24gdGhlDQo+PiBmaWxlIGRlc2NyaXB0b3IgdW5sZXNzIHRoZSBsb2cgaXMgZnVs bC4NCj4gDQo+IFllcyB0aGlzIGlzIGFuIGludGVyZXN0aW5nIHF1ZXN0aW9uIHRvIHRoaW5rIGFi b3V0Li4NCj4gDQo+IEtlZXBpbmcgdGhlIGRhdGEgaW4gdGhlIHBndGFibGUgaGFzIG9uZSBnb29k IHRoaW5nIHRoYXQgaXQgZG9lc24ndCBuZWVkIGFueQ0KPiBjb21wbGV4aXR5IG9uIG1haW50YWlu aW5nIHRoZSBsb2csIGFuZCBubyBwb3NzaWJpbGl0eSBvZiAibG9nIGZ1bGwiLg0KDQpJIHVuZGVy c3RhbmQgeW91ciBjb25jZXJuLCBidXQgSSB0aGluayB0aGF0IGV2ZW50dWFsbHkgaXQgbWlnaHQg YmUgc2ltcGxlcg0KdG8gbWFpbnRhaW4sIHNpbmNlIHRoZSBsb2dpYyBvZiBob3cgdG8gcHJvY2Vz cyB0aGUgbG9nIGlzIG1vdmVkIHRvIHVzZXJzcGFjZS4NCg0KQXQgdGhlIHNhbWUgdGltZSwgaGFu ZGxpbmcgaW5wdXRzIGZyb20gcGFnZW1hcCBhbmQgdWZmZCBoYW5kbGVycyBhbmQgc3luY+KAmWlu Zw0KdGhlbSB3b3VsZCBub3QgYmUgdG9vIGVhc3kgZm9yIHVzZXJzcGFjZS4NCg0KQnV0IHllcywg YWxsb2NhdGlvbiBvbiB0aGUgaGVhcCBmb3IgdXNlcmZhdWx0ZmRfd2FpdF9xdWV1ZS1saWtlIGVu dHJpZXMgd291bGQNCmJlIG5lZWRlZCwgYW5kIHRoZXJlIGFyZSBzb21lIGlzc3VlcyBvZiBvcmRl cmluZyB0aGUgZXZlbnRzIChJIHRoaW5rIGFsbCAjUEYNCmFuZCBvdGhlciBldmVudHMgc2hvdWxk IGJlIG9yZGVyZWQgcmVnYXJkbGVzcykgYW5kIGhvdyBub3QgdG8gdHJhdmVyc2UgYWxsDQphc3lu Yy11c2VyZmF1bHRmZF93YWl0X3F1ZXVl4oCZcyAoZXhjZXB0IHRob3NlIHRoYXQgYmxvY2sgaWYg dGhlIGxvZyBpcyBmdWxsKQ0Kd2hlbiBhIHdha2V1cCBpcyBuZWVkZWQuDQoNCj4gDQo+IElmIHRo ZXJlJ3MgcG9zc2libGUgImxvZyBmdWxsIiB0aGVuIHRoZSBuZXh0IHF1ZXN0aW9uIGlzIHdoZXRo ZXIgd2Ugc2hvdWxkDQo+IGxldCB0aGUgd29ya2VyIHdhaXQgdGhlIG1vbml0b3IgaWYgdGhlIG1v bml0b3IgaXMgbm90IGZhc3QgZW5vdWdoIHRvDQo+IGNvbGxlY3QgdGhvc2UgZGF0YS4gIEl0IGFk ZHMgc29tZSBzbGlnaHQgZGVwZW5kZW5jeSBvbiB0aGUgdHdvIHRocmVhZHMsIEkNCj4gdGhpbmsg aXQgY2FuIG1ha2UgdGhlIHRyYWNraW5nIGhhcmRlciBvciBpbXBvc3NpYmxlIGluIGxhdGVuY3kg c2Vuc2l0aXZlDQo+IHdvcmtsb2Fkcy4NCg0KQWdhaW4sIEkgdW5kZXJzdGFuZCB5b3VyIGNvbmNl cm4uIEJ1dCB0aGlzIG1vZGVsIHRoYXQgSSBwcm9wb3NlIGlzIG5vdCBuZXcuDQpJdCBpcyB1c2Vk IHdpdGggUE1MIChwYWdlLW1vZGlmaWNhdGlvbiBsb2dnaW5nKSBhbmQgS1ZNLCBhbmQgSUlSQyB0 aGVyZSBpcw0KYSBzaW1pbGFyIGludGVyZmFjZSBiZXR3ZWVuIEtWTSBhbmQgUUVNVSB0byBwcm92 aWRlIHRoaXMgaW5mb3JtYXRpb24uIFRoZXJlDQphcmUgZW5kbGVzcyBvdGhlciBleGFtcGxlcyBm b3Igc2ltaWxhciBwcm9kdWNlci1jb25zdW1lciBtZWNoYW5pc21zIHRoYXQNCm1pZ2h0IGxlYWQg dG8gc3RhbGwgaW4gZXh0cmVtZSBjYXNlcy4gDQoNCj4gDQo+IFRoZSBvdGhlciB0aGluZyBpcyB3 ZSBjYW4gYWxzbyBtYWtlIHRoZSBsb2cgIm5ldmVyIGdvbm5hIGZ1bGwiIGJ5IG1ha2luZyBpdA0K PiBhIGJpdG1hcCBjb3ZlcmluZyBhbnkgcmVnaXN0ZXJlZCByYW5nZXMsIGJ1dCBJIGRvbid0IGVp dGhlciBrbm93IHdoZXRoZXINCj4gaXQnbGwgYmUgd29ydGggaXQgZm9yIHRoZSBlZmZvcnQuDQoN CkkgZG8gbm90IHNlZSBhIGJlbmVmaXQgb2YgaGFsZi1sb2cgaGFsZi1zY2FuLiBJdCB0cmllcyB0 byB0YWtlIHRoZQ0KZGF0YS1zdHJ1Y3R1cmUgb2Ygb25lIGZvcm1hdCBhbmQgY29tYmluZSBpdCB3 aXRoIGFub3RoZXIuDQoNCkFueWhvdywgSSB3YXMganVzdCBnaXZpbmcgbXkgMiBjZW50cy4gQWRt aXR0ZWRseSwgSSBkaWQgbm90IGZvbGxvdyB0aGUNCnRocmVhZHMgb2YgcHJldmlvdXMgdmVyc2lv bnMgYW5kIEkgZGlkIG5vdCBzZWUgdXNlcnNwYWNlIGNvbXBvbmVudHMgdGhhdA0KdXNlIHRoZSBB UEkgdG8gc2F5IHNvbWV0aGluZyBzbWFydC4gUGVyc29uYWxseSwgSSBkbyBub3QgZmluZCB0aGUg Y3VycmVudA0KQVBJIHByb3Bvc2FsIHRvIGJlIHZlcnkgY29uc2lzdGVudCBhbmQgc2ltcGxlLCBh bmQgaXQgc2VlbXMgdG8gbWUgdGhhdCBpdA0KbGV0cyBwYWdlbWFwIGRvIHVzZXJmYXVsdGZkLXJl bGF0ZWQgdGFza3MsIHdoaWNoIG1pZ2h0IGJlIGNvbnNpZGVyZWQNCmluYXBwcm9wcmlhdGUgYW5k IG5vbi1pbnR1aXRpdmUuDQoNCklmIEkgZGVyYWlsZWQgdGhlIGRpc2N1c3Npb24sIEkgYXBvbG9n aXplLg0KDQo=