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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id D108CC28D13 for ; Mon, 22 Aug 2022 06:26:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233030AbiHVGZ6 (ORCPT ); Mon, 22 Aug 2022 02:25:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44574 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232981AbiHVGZv (ORCPT ); Mon, 22 Aug 2022 02:25:51 -0400 Received: from FRA01-MR2-obe.outbound.protection.outlook.com (mail-eopbgr90048.outbound.protection.outlook.com [40.107.9.48]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 082EE11819 for ; Sun, 21 Aug 2022 23:25:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ACoe5HhgNZ93GT35yj2mi5HWJuV+LUNrWljDWloJb5DYRCgK4TUkva0j2rPT4OY3yCHlfemkWCs6TRIEjHl7pBUBq9ukmMY/9zfsBrMxiZ/26wosh1cVlUW5S/UWVQAYIueIMV1bdTtNJsWOXMu16mQhsdMPU/xAeBPTtapPGKnVVZCmMVtvthhcdU5t0CIQXjCUiH9z1lAZbndPnsOr8nR+iE9OF7/S3IVhdp14Iyn2hoIYKODL6ZxpGnLlMf9gBPVnQmcJQ/CpKt8iejiQZ8jUo4V8D5x4DBxkszaMYPWRIjFW6a9BImjVIOQcn+k3IuSYJM4sEEFij2ZRTiCdVg== 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=b4rnYfwdD4M6boF1OqXw1BERO6yIQVWYcF1jxB95HW0=; b=lMMTH93FbjF/JbgFZToYf98h7yGCpuaIiKRKWslay/cruLvdmi6LoRrDQzzV4NMvanKm6rkOu/l70Wh2hjHOrEr+E/U9RSGoV6CEhGKzC/1fVLlGn4b8/6bRSn7PQuFzLIG/go3p853RwYKH05BWmp7BYlEZJBnWc5KiQj6dvUXO0xYkBKZvEOD6XElFvdSoYCbJHgUF+kgxykY7Q1fwVswrG2y6A0qGIUBVxX8+Fv6IXHGe3yPDHHNkh+ZnXO8xDhqG6JZMi8H0fM33Xyne8oLwZQ3KpNpCnMqzy3ZOQtFjcPn+vQDtlLVPdJhkF2Xr1Du9+ub5xtc+lWKyxI1iLg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=csgroup.eu; dmarc=pass action=none header.from=csgroup.eu; dkim=pass header.d=csgroup.eu; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=csgroup.eu; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=b4rnYfwdD4M6boF1OqXw1BERO6yIQVWYcF1jxB95HW0=; b=oxGcZRASIwO3Wk/+myn69ZxpaiqwbKXSItIaPv+JEEm6s3oV/kks3a3VjB0enuR317E269iKZt4SSJKSHm4gNY4HH+wFMJBB9RmPYBvAk41ZN8NzonHmANKosQxvSvtTE9+l7qqhUkQqDYuOKZI+ytAwBKXow/wol39JEVepw0pLPEkkvHOGXmhnTmH61VTP5KU0rjlJe0aWYERtNLz2e+EEbtGDIHEbcNq9UBwyFNx87VduXdMzZO9v+oQ5sUdMDOb0zQQWJe9stKZMvR/5cjXiFhZkJ5pWMJvHLprLQx7B/P/4Aevm1yV7cWJYXVubWxbEiSspHL7CV7ohspV+6A== Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:31::15) by MRZP264MB3081.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:1a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5546.16; Mon, 22 Aug 2022 06:25:47 +0000 Received: from MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM ([fe80::888e:a92e:a4ee:ce9e]) by MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM ([fe80::888e:a92e:a4ee:ce9e%5]) with mapi id 15.20.5546.022; Mon, 22 Aug 2022 06:25:47 +0000 From: Christophe Leroy To: Baoquan He , "linux-kernel@vger.kernel.org" CC: "linux-mm@kvack.org" , "akpm@linux-foundation.org" , "hch@infradead.org" , "agordeev@linux.ibm.com" , "wangkefeng.wang@huawei.com" , "linux-arm-kernel@lists.infradead.org" Subject: Re: [PATCH v2 01/11] mm/ioremap: change the return value of io[re|un]map_allowed and rename Thread-Topic: [PATCH v2 01/11] mm/ioremap: change the return value of io[re|un]map_allowed and rename Thread-Index: AQHYtCxluEXLt15y9kSkQpSsai/RVK26d60A Date: Mon, 22 Aug 2022 06:25:47 +0000 Message-ID: References: <20220820003125.353570-1-bhe@redhat.com> <20220820003125.353570-2-bhe@redhat.com> In-Reply-To: <20220820003125.353570-2-bhe@redhat.com> Accept-Language: fr-FR, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=csgroup.eu; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 495279d9-88f3-4666-6dbf-08da8407266c x-ms-traffictypediagnostic: MRZP264MB3081:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: z3IauePoZrv+iyWMjULZd7apqa/aYPaBxDBiNXd+VtJi0kD+EAxCxYc/NAy04Qf1koq7eswJtS8WhDJB/L8+9hFsJQ8f3w7X/iEYQtPYPJMgl5qZCXrCbM2Nh6uyA2lPlQoj7B9jL/Y70FhMYFePCYmv5o4KoccOIPU7+CfBpmmwW2DtjvUW5N/OMYSB/loh06Cb7IE4tP29eeKA6/D0R/UDKNCBLgA1STUQ7TPeOephaivHTDraDavvcMuZHYn8/fuQp7fC6dOE5QTTRtNML4BJHCX1oc5/DrARiVhHDWjaGtjPfeBF3w0yWyIhAA0gek1zraDHHcbOOEIUwARhnnBld75TjmvpI9Vty3HHlNuKd0/o7egJjahm/BCId145gMY49aDFD8w6Cu3peHgU4+uOiyqpEik8/7szIElgauaprBOYDNV+nMAM+I4KeLkbA2Xjy7VPIeQs7v8MjoOt7ZrXjYSyzyIj9kG1LpPLVjFa39bxgyIhrhDKNgHySg7Lia/YSKnKgtuFoKuYvnPc0qjmngeFFlD9FKtmXX25EKXN07SiWj2do+awtGETYJntdMrQy5PvwWvP7Ptp+89bfV0kwuCe+Pvv6vL7y3wGDi4okDme0e8ssyAAXavf1GspV7l4vhUMPuJ/mE9SMNvVsxuLl7vNXmbfe29qqRapugbyHpQI/vzaaYfgim1zUb4t2ifMMTe8aFgIAYraMA59Ann2LqNnlLKl/VHkJfhLYsuW0fR33F8HguMLuLUMP1rqnz0hzf8RDr3JYUc3TI+aa5j3KoT/RCDA2i9Vm6HhVUQgtKsIF6JgMdvEs4nxf86+bAnBoC+g1mnpOygJKbbsaAOlngkubIkhVKe9CcWoIXg= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230016)(4636009)(396003)(39850400004)(366004)(136003)(376002)(346002)(6486002)(966005)(478600001)(66574015)(186003)(83380400001)(71200400001)(44832011)(38100700002)(2906002)(122000001)(5660300002)(36756003)(41300700001)(31686004)(8936002)(31696002)(66556008)(66476007)(66446008)(64756008)(4326008)(8676002)(38070700005)(54906003)(76116006)(66946007)(91956017)(110136005)(2616005)(6512007)(6506007)(316002)(26005)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RFJsRDdpLzVyckx0VndiV2xtbVRLeW9FRDg0Mk1mRFNROTZOTE9HcElpMG1k?= =?utf-8?B?bS9BWlA5OE1OdVpReGR2WmJMMVFKQ2NjWWIrQUlTU2Z0QjJITEZJWUt3dDhI?= =?utf-8?B?bkdqSTRTc2RPQjhlSVQ3T2VsOXNnMC9CMWRhWlN4M3Q3VTJPU1FlZEJjMHI5?= =?utf-8?B?dGRONVU3RVFuWThrQTlRRjhLZGNYdlFUeUdGQmNyYmdOQk9qZTB6VjNZcVQ1?= =?utf-8?B?QnVDbzFneEIrQUwzc05nbFFMRyt5a0JGNGdXYWJNdmtickh5cDNzV2YxYTIr?= =?utf-8?B?QU9WeTk3VmgyemFSYzcwZkxRbHVqQ2MyVi9DTjZDb1U3WEdvSkxHNTM0b2tz?= =?utf-8?B?S1d5SkJZNGNCZUVLTTU2a2hrZU9SQmpBOE9VcnNTVUVNQW1JbmRTM29KQXZF?= =?utf-8?B?L0h1TGx2SCtMYVpzazVoR0ZlVndiMzF1QnZuQTlNK0t6VlAyZTZnWWpERzhT?= =?utf-8?B?enJ6Z0tYMHJId1lyNW5ZdlNpRDBZckt1Zk14Y2hQUmZlS2dLWjNGb1NLbisr?= =?utf-8?B?RjE0WE9wUTZzdHdWWUowdXJkVkJLdDJiYzdLcE9YY3kzWmdNQ3NTMlM4d3hR?= =?utf-8?B?Vzk0YmRUTGtpQklyWmJjcm1LQnp1VjlVTytYVmt4N0pnZmlBeGhjNzZNTkhU?= =?utf-8?B?UjZxdy9WQkNNcEV0bE1ia2xkMm51a2NKc1Njd2NLb1hBRlZXWUtiZ0VjbUtW?= =?utf-8?B?eVRQUStaTm0xN2NjcXRWbVExQUhabTlkc2VmOW56Q3NWYVV6dEtqWnBMVUsy?= =?utf-8?B?VGpncUlQUXV1ZHNBWElSMFdyZ2VhYm9keDc5TXI3WkJKL1VQTm12c3lDa0tH?= =?utf-8?B?d1c3cjdBQ2NBM0xpREt3YkJJdlR0MFRJc3kwYjZIekl6c3k3ZjhXWXNUM0h0?= =?utf-8?B?a0dQM04zU2VrWmFEOU53MExya29Wd0VxbWpKVkNhMHhjYTJqRjNiK1YxMGs3?= =?utf-8?B?RzVXUzdYVkxFbFVTcXJtbkh4bzk2OXlncHAxNnExVm1XcFR2azF1REpVY2NU?= =?utf-8?B?c0VuVmkrUlJmUzJtRWxiUmx2RDQyNjZWekR4Y0RoUWhleEF5NVVFdlBUZ1hX?= =?utf-8?B?MWd6Tm5YYkFTM0g2OW5aOWJHUHJzR1pySzRzakxsNUlTeUxWS1pFMWxZVTNU?= =?utf-8?B?ZE9YVUtIeUgxZy8zVHZZdHkzOU91UmI5SnN2R2VhVCtzbzNydGU2OHNNZHJD?= =?utf-8?B?Q3JXZ0VZdUZabUxoRUlKeDAvSzZTZ1dsQzZKOHp5RUN2d1hxYzlsU1R6TzFx?= =?utf-8?B?cldGMzJyeTFKTUloQmRWVlNyRWE5Ly9VL3E0U1VTWEZvTFBNcWE3OHI2N2RG?= =?utf-8?B?RWJJb09GZ3h3U1EvbGkzYVNKU3JuU3JuVk1rbVhTTGJMQ3hvNVh5M1FyVU1x?= =?utf-8?B?aU55UDQrdDZxbzJDbVBoUDFjL0JZdms0dVlCdEdQZTQ5ZjFVWmhEZlNuZGtY?= =?utf-8?B?ckI5Zi9rQnhRSE1Mb0FaS24ra2hxeXpJVjMwQSswNk9HOSt5M0pEUjk3VjA4?= =?utf-8?B?UU1CS1d1WUN3U3dPd2FTM00xNGJLN25nSnVNMTFEZkRUMEZ5b21PVllXQncz?= =?utf-8?B?eDNLVWROcUU0RDZuM1MwYUc2OVJUTEE5VVJGSEgyaGIrdDhEdEtpK3ViTHFW?= =?utf-8?B?UHhFSGx5V2lBK2kxRE15Q3VSZ2Z5SHNBcnJXRS9QWjVJN29oV2VJWFQyZ2Nt?= =?utf-8?B?MUtzYkROUWJwM1pMcFAvNmdJelNVUVY0WTA5OUVvc2pvb1BPQWVqTGtodVlY?= =?utf-8?B?MDlUTVV3d0ZLUFU4ZC9sZ0pXN1FMbldpQXdldDBtRWttNDhQUVVOckJidTYz?= =?utf-8?B?MGZ0TVRrR001ejl4ODlSeTRQRk1Qa3FCTmFpYjZsL2FYL21ETThYSXRkMGd1?= =?utf-8?B?ZDd3R3psVDF3TnRmYS9CUnd4M2NGODAvQnF6M0tjbHBIRWR5RDVXdnVoaUdv?= =?utf-8?B?dzF2aEs2dEsrOGt2UGRZbXFJMVlFY3VNczIxU3lRbExBTzJBR3BpQUk1SURm?= =?utf-8?B?bXNsd3ppZ3VEQlMxa2lXNWdTTzZETXBWZEVTQ0plK1hHbEVNUHNGMVVtdytl?= =?utf-8?B?MkxYVkRVZEx6aFlNZFJ0NmFWYmxoVXVneGxtOVdGbUh6WTNCSGY1MnBtK3dp?= =?utf-8?B?Mzk3c3YwVzJ6R0Z4N2xNQS90NVNYVTdmbHVLbkZGNmExbTY0ZG9QaDhMR0V5?= =?utf-8?Q?kXCedOs8dopj4B+1JtioBgI=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <1547FC10C691764DACB314DA2225D708@FRAP264.PROD.OUTLOOK.COM> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: csgroup.eu X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MRZP264MB2988.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 495279d9-88f3-4666-6dbf-08da8407266c X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Aug 2022 06:25:47.0155 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9914def7-b676-4fda-8815-5d49fb3b45c8 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: VyWKfoW/O04Ho7rJszSz+MRW113+N4Kf7BnNP3AlHqCFQrthRwLA72NpCYVYGgpy6l+KId2Vh2rkkv1Bm5ItxiDxsqIZhioPRzAAG69fLD0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MRZP264MB3081 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org DQoNCkxlIDIwLzA4LzIwMjIgw6AgMDI6MzEsIEJhb3F1YW4gSGUgYSDDqWNyaXTCoDoNCj4gSW4g c29tZSBhcmNoaXRlY3R1cmVzLCB0aGVyZSBhcmUgQVJDSCBzcGVjaWZpY2kgaW8gYWRkcmVzcyBt YXBwaW5nDQo+IGhhbmRsaW5nIHdoZW4gY2FsbGluZyBpb3JlbWFwKCkgb3IgaW9yZW1hcF9wcm90 KCksIGUuZywgYXJjLCBpYTY0LA0KPiBvcGVucmlzYywgczM5MCwgc2guDQo+IA0KPiBJbiBvZGVy IHRvIGNvbnZlcnQgdGhlbSB0byB0YWtlIEdFTkVSSUNfSU9SRU1BUCBtZXRob2QsIHdlIG5lZWQg Y2hhbmdlDQo+IHRoZSByZXR1cm4gdmFsdWUgb2YgaG9vayBpb3JlbWFwX2FsbG93ZWQoKSBhbmQg aW91bm1hcF9hbGxvd2VkKCkuDQo+IE1lYW53aGlsZSwgcmVuYW1lIHRoZW0gdG8gYXJjaF9pb3Jl bWFwKCkgYW5kIGFyY2hfaW91bm1hcCgpIHRvIHJlZmxlY3QNCj4gdGhlaXIgY3VycmVudCBiZWhh dmlvdXIuDQoNClBsZWFzZSBkb24ndCBqdXN0IHNheSB5b3UgbmVlZCB0byBjaGFuZ2UgdGhlIHJl dHVybiB2YWx1ZS4gRXhwbGFpbiB3aHkuDQoNCkFuZCB3aHkgZG9lcyBpdCBuZWVkIGEgbmFtZSBj aGFuZ2UgPyBUaGUgbmV3IG5hbWUgc3VnZ2VzdHMgdGhhdCB3aGF0IHdhcyANCnNpbXBseSBhIGNo ZWNrIGZ1bmN0aW9uIGJlY29tZXMgbm93IGEgZnVuY3Rpb24gZG9pbmcgdGhlIGpvYi4gSXMgdGhh dCANCnRoZSBpbnRlbnRpb24gPw0KDQoNCj4gDQo+ID09PQ0KPiAgIGFyY2hfaW9yZW1hcCgpIHJl dHVybiBhIGJvb2wsDQoNCkl0IGlzIG5vdCBhIGJvb2wuIEEgYm9vbCBpcyBlaXRoZXIgdHJ1ZSBv ciBmYWxzZS4NCg0KPiAgICAgLSBJU19FUlIgbWVhbnMgcmV0dXJuIGFuIGVycm9yDQo+ICAgICAt IE5VTEwgbWVhbnMgY29udGludWUgdG8gcmVtYXANCj4gICAgIC0gYSBub24tTlVMTCwgbm9uLUlT X0VSUiBwb2ludGVyIGlzIHJldHVybmVkIGRpcmVjdGx5DQo+ICAgYXJjaF9pb3VubWFwKCkgcmV0 dXJuIGEgYm9vbCwNCg0KU2FtZSBoZXJlLCBub3QgYSBib29sIGVpdGhlci4NCg0KPiAgICAgLSAw IG1lYW5zIGNvbnRpbnVlIHRvIHZ1bm1hcA0KPiAgICAgLSBlcnJvciBjb2RlIG1lYW5zIHNraXAg dnVubWFwIGFuZCByZXR1cm4gZGlyZWN0bHkNCj4gDQo+IFRoaXMgaXMgdGFrZW4gZnJvbSBLZWZl bmcncyBiZWxvdyBvbGQgcGF0Y2guIENocmlzdG9waCBzdWdnZXN0ZWQgdGhlDQo+IHJldHVybiB2 YWx1ZSBiZWNhdXNlIGhlIGZvcmVzYXcgdGhlIGRvYWJsaXR5IG9mIGNvbnZlcnRpbmcgdG8gdGFr ZQ0KPiBHRU5FUklDX0lPUkVNQVAgb24gbW9yZSBhcmNoaXRlY3R1cmVzLg0KPiAgIC0gW1BBVENI IHYzIDQvNl0gbW06IGlvcmVtYXA6IEFkZCBhcmNoX2lvcmVtYXAvaW91bm1hcCgpDQo+ICAgLSBo dHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyMjA1MTkwODI1NTIuMTE3NzM2LTUtd2FuZ2tl ZmVuZy53YW5nQGh1YXdlaS5jb20vVC8jdQ0KPiANCj4gV2hpbGUgYXQgaXQsIHRoZSBpbnZvY2F0 aW9uIG9mIGFyY2hfaW9yZW1hcCgpIG5lZWQgYmUgbW92ZWQgdG8gdGhlDQo+IGJlZ2lubmluZyBv ZiBpb3JlbWFwX3Byb3QoKSBiZWNhdXNlIGFyY2hpdGVjdHVyZXMgbGlrZSBzaCwgb3BlbnJpc2Ms DQo+IGlhNjQsIG5lZWQgZG8gdGhlIEFSQ0ggc3BlY2lmaWMgaW8gYWRkcmVzcyBtYXBwaW5nIG9u IHRoZSBvcmlnaW5hbA0KPiBwaHlzaWNhbCBhZGRyZXNzLiBBbmQgaW4gdGhlIGxhdGVyIHBhdGNo LCB0aGUgYWRkcmVzcyBmaXggdXAgY29kZQ0KPiBpbiBhcmNoX2lvcmVtYXAoKSBhbHNvIG5lZWQg YmUgZG9uZSBvbiB0aGUgb3JpZ2luYWwgYWRkcmUgb24gc29tZQ0KPiBhcmNoaXRlY3R1cmVzLg0K PiANCj4gVGhpcyBpcyBwcmVwYXJhdGlvbiBmb3IgbGF0ZXIgcGF0Y2gsIG5vIGZ1bmN0aW9uYWxp dHkgY2hhbmdlLg0KDQpObyBmdW5jdGlvbm5hbCBjaGFuZ2UsIHJlYWxseSA/DQoNCj4gDQo+IFNp Z25lZC1vZmYtYnk6IEJhb3F1YW4gSGUgPGJoZUByZWRoYXQuY29tPg0KPiAtLS0NCj4gICBhcmNo L2FybTY0L2luY2x1ZGUvYXNtL2lvLmggfCAgNCArKy0tDQo+ICAgYXJjaC9hcm02NC9tbS9pb3Jl bWFwLmMgICAgIHwgMTUgKysrKysrKysrKy0tLS0tDQo+ICAgaW5jbHVkZS9hc20tZ2VuZXJpYy9p by5oICAgIHwgMjkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0NCj4gICBtbS9pb3JlbWFw LmMgICAgICAgICAgICAgICAgfCAxMiArKysrKysrKy0tLS0NCj4gICA0IGZpbGVzIGNoYW5nZWQs IDM1IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2Fy Y2gvYXJtNjQvaW5jbHVkZS9hc20vaW8uaCBiL2FyY2gvYXJtNjQvaW5jbHVkZS9hc20vaW8uaA0K PiBpbmRleCA4Nzc0OTVhMGZkMGMuLmRkN2UxYzJkYzg2YyAxMDA2NDQNCj4gLS0tIGEvYXJjaC9h cm02NC9pbmNsdWRlL2FzbS9pby5oDQo+ICsrKyBiL2FyY2gvYXJtNjQvaW5jbHVkZS9hc20vaW8u aA0KPiBAQCAtMTM5LDggKzEzOSw4IEBAIGV4dGVybiB2b2lkIF9fbWVtc2V0X2lvKHZvbGF0aWxl IHZvaWQgX19pb21lbSAqLCBpbnQsIHNpemVfdCk7DQo+ICAgICogSS9PIG1lbW9yeSBtYXBwaW5n IGZ1bmN0aW9ucy4NCj4gICAgKi8NCj4gICANCj4gLWJvb2wgaW9yZW1hcF9hbGxvd2VkKHBoeXNf YWRkcl90IHBoeXNfYWRkciwgc2l6ZV90IHNpemUsIHVuc2lnbmVkIGxvbmcgcHJvdCk7DQo+IC0j ZGVmaW5lIGlvcmVtYXBfYWxsb3dlZCBpb3JlbWFwX2FsbG93ZWQNCj4gK3ZvaWQgX19pb21lbSAq YXJjaF9pb3JlbWFwKHBoeXNfYWRkcl90IHBoeXNfYWRkciwgc2l6ZV90IHNpemUsIHVuc2lnbmVk IGxvbmcgcHJvdCk7DQo+ICsjZGVmaW5lIGFyY2hfaW9yZW1hcCBhcmNoX2lvcmVtYXANCj4gICAN Cj4gICAjZGVmaW5lIF9QQUdFX0lPUkVNQVAgUFJPVF9ERVZJQ0VfbkduUkUNCj4gICANCj4gZGlm ZiAtLWdpdCBhL2FyY2gvYXJtNjQvbW0vaW9yZW1hcC5jIGIvYXJjaC9hcm02NC9tbS9pb3JlbWFw LmMNCj4gaW5kZXggYzVhZjEwM2Q0YWQ0Li5iMGY0Y2VhODZmMGUgMTAwNjQ0DQo+IC0tLSBhL2Fy Y2gvYXJtNjQvbW0vaW9yZW1hcC5jDQo+ICsrKyBiL2FyY2gvYXJtNjQvbW0vaW9yZW1hcC5jDQo+ IEBAIC0zLDE5ICszLDI0IEBADQo+ICAgI2luY2x1ZGUgPGxpbnV4L21tLmg+DQo+ICAgI2luY2x1 ZGUgPGxpbnV4L2lvLmg+DQo+ICAgDQo+IC1ib29sIGlvcmVtYXBfYWxsb3dlZChwaHlzX2FkZHJf dCBwaHlzX2FkZHIsIHNpemVfdCBzaXplLCB1bnNpZ25lZCBsb25nIHByb3QpDQo+ICt2b2lkIF9f aW9tZW0gKmFyY2hfaW9yZW1hcChwaHlzX2FkZHJfdCBwaHlzX2FkZHIsIHNpemVfdCBzaXplLCB1 bnNpZ25lZCBsb25nIHByb3QpDQo+ICAgew0KPiAtCXVuc2lnbmVkIGxvbmcgbGFzdF9hZGRyID0g cGh5c19hZGRyICsgc2l6ZSAtIDE7DQo+ICsJdW5zaWduZWQgbG9uZyBsYXN0X2FkZHIsIG9mZnNl dDsNCj4gKw0KPiArCW9mZnNldCA9IHBoeXNfYWRkciAmICh+UEFHRV9NQVNLKTsNCj4gKwlwaHlz X2FkZHIgLT0gb2Zmc2V0Ow0KPiArCXNpemUgPSBQQUdFX0FMSUdOKHNpemUgKyBvZmZzZXQpOw0K PiArCWxhc3RfYWRkciA9IHBoeXNfYWRkciArIHNpemUgLSAxOw0KPiAgIA0KPiAgIAkvKiBEb24n dCBhbGxvdyBvdXRzaWRlIFBIWVNfTUFTSyAqLw0KPiAgIAlpZiAobGFzdF9hZGRyICYgflBIWVNf TUFTSykNCj4gLQkJcmV0dXJuIGZhbHNlOw0KPiArCQlyZXR1cm4gSU9NRU1fRVJSX1BUUigtRUlO VkFMKTsNCj4gICANCj4gICAJLyogRG9uJ3QgYWxsb3cgUkFNIHRvIGJlIG1hcHBlZC4gKi8NCj4g ICAJaWYgKFdBUk5fT04ocGZuX2lzX21hcF9tZW1vcnkoX19waHlzX3RvX3BmbihwaHlzX2FkZHIp KSkpDQo+IC0JCXJldHVybiBmYWxzZTsNCj4gKwkJcmV0dXJuIElPTUVNX0VSUl9QVFIoLUVJTlZB TCk7DQo+ICAgDQo+IC0JcmV0dXJuIHRydWU7DQo+ICsJcmV0dXJuIE5VTEw7DQo+ICAgfQ0KPiAg IA0KPiAgIC8qDQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2FzbS1nZW5lcmljL2lvLmggYi9pbmNs dWRlL2FzbS1nZW5lcmljL2lvLmgNCj4gaW5kZXggYTY4ZjhmYmY0MjNiLi43YjZiZmI2MmVmODAg MTAwNjQ0DQo+IC0tLSBhL2luY2x1ZGUvYXNtLWdlbmVyaWMvaW8uaA0KPiArKysgYi9pbmNsdWRl L2FzbS1nZW5lcmljL2lvLmgNCj4gQEAgLTEwNDksMjcgKzEwNDksMjggQEAgc3RhdGljIGlubGlu ZSB2b2lkIGlvdW5tYXAodm9sYXRpbGUgdm9pZCBfX2lvbWVtICphZGRyKQ0KPiAgIA0KPiAgIC8q DQo+ICAgICogQXJjaCBjb2RlIGNhbiBpbXBsZW1lbnQgdGhlIGZvbGxvd2luZyB0d28gaG9va3Mg d2hlbiB1c2luZyBHRU5FUklDX0lPUkVNQVANCj4gLSAqIGlvcmVtYXBfYWxsb3dlZCgpIHJldHVy biBhIGJvb2wsDQo+IC0gKiAgIC0gdHJ1ZSBtZWFucyBjb250aW51ZSB0byByZW1hcA0KPiAtICog ICAtIGZhbHNlIG1lYW5zIHNraXAgcmVtYXAgYW5kIHJldHVybiBkaXJlY3RseQ0KPiAtICogaW91 bm1hcF9hbGxvd2VkKCkgcmV0dXJuIGEgYm9vbCwNCj4gLSAqICAgLSB0cnVlIG1lYW5zIGNvbnRp bnVlIHRvIHZ1bm1hcA0KPiAtICogICAtIGZhbHNlIG1lYW5zIHNraXAgdnVubWFwIGFuZCByZXR1 cm4gZGlyZWN0bHkNCj4gKyAqIGFyY2hfaW9yZW1hcCgpIHJldHVybiBhIGJvb2wsDQo+ICsgKiAg IC0gSVNfRVJSIG1lYW5zIHJldHVybiBhbiBlcnJvcg0KPiArICogICAtIE5VTEwgbWVhbnMgY29u dGludWUgdG8gcmVtYXANCj4gKyAqICAgLSBhIG5vbi1OVUxMLCBub24tSVNfRVJSIHBvaW50ZXIg aXMgcmV0dXJuZWQgZGlyZWN0bHkNCj4gKyAqIGFyY2hfaW91bm1hcCgpIHJldHVybiBhIGJvb2ws DQo+ICsgKiAgIC0gMCBtZWFucyBjb250aW51ZSB0byB2dW5tYXANCj4gKyAqICAgLSBlcnJvciBj b2RlIG1lYW5zIHNraXAgdnVubWFwIGFuZCByZXR1cm4gZGlyZWN0bHkNCj4gICAgKi8NCj4gLSNp Zm5kZWYgaW9yZW1hcF9hbGxvd2VkDQo+IC0jZGVmaW5lIGlvcmVtYXBfYWxsb3dlZCBpb3JlbWFw X2FsbG93ZWQNCj4gLXN0YXRpYyBpbmxpbmUgYm9vbCBpb3JlbWFwX2FsbG93ZWQocGh5c19hZGRy X3QgcGh5c19hZGRyLCBzaXplX3Qgc2l6ZSwNCj4gKyNpZm5kZWYgYXJjaF9pb3JlbWFwDQo+ICsj ZGVmaW5lIGFyY2hfaW9yZW1hcCBhcmNoX2lvcmVtYXANCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBf X2lvbWVtICphcmNoX2lvcmVtYXAocGh5c19hZGRyX3QgcGh5c19hZGRyLCBzaXplX3Qgc2l6ZSwN Cj4gICAJCQkJICAgdW5zaWduZWQgbG9uZyBwcm90KQ0KPiAgIHsNCj4gLQlyZXR1cm4gdHJ1ZTsN Cj4gKwlyZXR1cm4gTlVMTDsNCj4gICB9DQo+ICAgI2VuZGlmDQo+ICAgDQo+IC0jaWZuZGVmIGlv dW5tYXBfYWxsb3dlZA0KPiAtI2RlZmluZSBpb3VubWFwX2FsbG93ZWQgaW91bm1hcF9hbGxvd2Vk DQo+IC1zdGF0aWMgaW5saW5lIGJvb2wgaW91bm1hcF9hbGxvd2VkKHZvaWQgKmFkZHIpDQo+ICsj aWZuZGVmIGFyY2hfaW91bm1hcA0KPiArI2RlZmluZSBhcmNoX2lvdW5tYXAgYXJjaF9pb3VubWFw DQo+ICtzdGF0aWMgaW5saW5lIGludCBhcmNoX2lvdW5tYXAodm9pZCBfX2lvbWVtICphZGRyKQ0K PiAgIHsNCj4gLQlyZXR1cm4gdHJ1ZTsNCj4gKwlyZXR1cm4gMDsNCj4gICB9DQo+ICAgI2VuZGlm DQo+ICAgDQo+IGRpZmYgLS1naXQgYS9tbS9pb3JlbWFwLmMgYi9tbS9pb3JlbWFwLmMNCj4gaW5k ZXggODY1MjQyNjI4MmNjLi45OWZkZTY5YmVjYzcgMTAwNjQ0DQo+IC0tLSBhL21tL2lvcmVtYXAu Yw0KPiArKysgYi9tbS9pb3JlbWFwLmMNCj4gQEAgLTE3LDYgKzE3LDEzIEBAIHZvaWQgX19pb21l bSAqaW9yZW1hcF9wcm90KHBoeXNfYWRkcl90IHBoeXNfYWRkciwgc2l6ZV90IHNpemUsDQo+ICAg CXVuc2lnbmVkIGxvbmcgb2Zmc2V0LCB2YWRkcjsNCj4gICAJcGh5c19hZGRyX3QgbGFzdF9hZGRy Ow0KPiAgIAlzdHJ1Y3Qgdm1fc3RydWN0ICphcmVhOw0KPiArCXZvaWQgX19pb21lbSAqaW9hZGRy Ow0KPiArDQo+ICsJaW9hZGRyID0gYXJjaF9pb3JlbWFwKHBoeXNfYWRkciwgc2l6ZSwgcHJvdCk7 DQo+ICsJaWYgKElTX0VSUihpb2FkZHIpKQ0KPiArCQlyZXR1cm4gTlVMTDsNCj4gKwllbHNlIGlm IChpb2FkZHIpDQo+ICsJCXJldHVybiBpb2FkZHI7DQo+ICAgDQo+ICAgCS8qIERpc2FsbG93IHdy YXAtYXJvdW5kIG9yIHplcm8gc2l6ZSAqLw0KPiAgIAlsYXN0X2FkZHIgPSBwaHlzX2FkZHIgKyBz aXplIC0gMTsNCj4gQEAgLTI4LDkgKzM1LDYgQEAgdm9pZCBfX2lvbWVtICppb3JlbWFwX3Byb3Qo cGh5c19hZGRyX3QgcGh5c19hZGRyLCBzaXplX3Qgc2l6ZSwNCj4gICAJcGh5c19hZGRyIC09IG9m ZnNldDsNCj4gICAJc2l6ZSA9IFBBR0VfQUxJR04oc2l6ZSArIG9mZnNldCk7DQo+ICAgDQo+IC0J aWYgKCFpb3JlbWFwX2FsbG93ZWQocGh5c19hZGRyLCBzaXplLCBwcm90KSkNCj4gLQkJcmV0dXJu IE5VTEw7DQo+IC0NCj4gICAJYXJlYSA9IGdldF92bV9hcmVhX2NhbGxlcihzaXplLCBWTV9JT1JF TUFQLA0KPiAgIAkJCV9fYnVpbHRpbl9yZXR1cm5fYWRkcmVzcygwKSk7DQo+ICAgCWlmICghYXJl YSkNCj4gQEAgLTUyLDcgKzU2LDcgQEAgdm9pZCBpb3VubWFwKHZvbGF0aWxlIHZvaWQgX19pb21l bSAqYWRkcikNCj4gICB7DQo+ICAgCXZvaWQgKnZhZGRyID0gKHZvaWQgKikoKHVuc2lnbmVkIGxv bmcpYWRkciAmIFBBR0VfTUFTSyk7DQo+ICAgDQo+IC0JaWYgKCFpb3VubWFwX2FsbG93ZWQodmFk ZHIpKQ0KPiArCWlmIChhcmNoX2lvdW5tYXAoKHZvaWQgX19pb21lbSAqKWFkZHIpKQ0KPiAgIAkJ cmV0dXJuOw0KPiAgIA0KPiAgIAlpZiAoaXNfdm1hbGxvY19hZGRyKHZhZGRyKSk=