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 469BEC43334 for ; Mon, 27 Jun 2022 06:03:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CB22D6B0071; Mon, 27 Jun 2022 02:03:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C62518E0002; Mon, 27 Jun 2022 02:03:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AB5F28E0001; Mon, 27 Jun 2022 02:03:02 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 95FCD6B0071 for ; Mon, 27 Jun 2022 02:03:02 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 5777B2089C for ; Mon, 27 Jun 2022 06:03:02 +0000 (UTC) X-FDA: 79622972604.24.BD9B0F9 Received: from JPN01-OS0-obe.outbound.protection.outlook.com (mail-os0jpn01on2077.outbound.protection.outlook.com [40.107.113.77]) by imf04.hostedemail.com (Postfix) with ESMTP id 930E540012 for ; Mon, 27 Jun 2022 06:03:00 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AG6dXLR8DbjoUhIPFWRNVMxW2NoS3Au4l66xDEHgH0ySCURT9sF34bUdWUZAn9g3CwZPhSq5IzvaG9dq5jGqy+ez7J9xERtaHQdZttuGMM1zLWzJLzt45vvj1EEEPsijlgvWUYQ6lL5LrMyuChM5fbeZtKesXrygPWM3Bgx1LyGHUEULh3FHdkt8ZlCQjvQTNiKnqD+Sw2zTp7AqeUevF4MPhiBQOLp+1akg6kPoJbFN1vPgOxqXRJmL+2+63a2OrKNM6CTLJCdc0GKHfwRriq+WdeI4oTB2+iWJ9OdZP9bU0ZL+Wo4djCxQ8ztAWPd9/cWI+ACwQhFQpCUMEjGCEw== 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=DIqWmj2oh6xub4o8bsyHnmDHI34sRzvSD1pq7xU4PiI=; b=dLQMk01kwoBmUE7pUjHoZqAgRxC8LAzZq2Kuyef95/ImMchaYaJGna12gCu5hZBu0xfm2sryJJGYYLaQtqntkz+de5NQDUlAITuwiuPIHh4I1l8qS7a/u3jGe4bPPaK6Dzntz3TA3MSvlEEk5JrnBg6jy6S0VHwMKSA5tfWE5W4JyKzK29aZQk3fmjyht1CjKIKCGZ+pw8NKSbaOnkKh8fm2U0n2qwMHtfeEcguVh12+H7gr6UyHPglntBF3wkX3pWaa/RDoNf9/vd1Xl+HWAF7ncrgiLBK7K5h4TLPkwiAXswASY6Sqc3yw8ZsMb2PhULCVp5tGoMYRiGfhzyRRbw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nec.com; dmarc=pass action=none header.from=nec.com; dkim=pass header.d=nec.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nec.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DIqWmj2oh6xub4o8bsyHnmDHI34sRzvSD1pq7xU4PiI=; b=NpNO17abCEplVG7QvOujYGeHY0llHsT4Jrsz97fy9gqlRFCQJho7TUqcNgHiOirIKFReTq2e3xpRz0eQBdXoZV9e6Dow1+2Xe1SykTww8Ju3uE2VTJmKGoWa5Et9/LpDPW11wFXVON6V/cC7/tLfd++0jrhd2tsxnyrLEDgfInU= Received: from TYWPR01MB8591.jpnprd01.prod.outlook.com (2603:1096:400:13c::10) by OS3PR01MB7431.jpnprd01.prod.outlook.com (2603:1096:604:14a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Mon, 27 Jun 2022 06:02:57 +0000 Received: from TYWPR01MB8591.jpnprd01.prod.outlook.com ([fe80::5d07:3dbc:2b8c:d836]) by TYWPR01MB8591.jpnprd01.prod.outlook.com ([fe80::5d07:3dbc:2b8c:d836%7]) with mapi id 15.20.5373.018; Mon, 27 Jun 2022 06:02:57 +0000 From: =?utf-8?B?SE9SSUdVQ0hJIE5BT1lBKOWggOWPo+OAgOebtOS5nyk=?= To: Mike Kravetz CC: Miaohe Lin , Muchun Song , Naoya Horiguchi , Andrew Morton , David Hildenbrand , Liu Shixin , Yang Shi , Oscar Salvador , "linux-kernel@vger.kernel.org" , Linux-MM Subject: Re: [PATCH v2 1/9] mm/hugetlb: remove checking hstate_is_gigantic() in return_unused_surplus_pages() Thread-Topic: [PATCH v2 1/9] mm/hugetlb: remove checking hstate_is_gigantic() in return_unused_surplus_pages() Thread-Index: AQHYh1xSoNvgTy1mRUSP6G7yMyIF8K1d1LUAgABeaQCAAAM+gIAABVoAgACx4YCAA9qpgA== Date: Mon, 27 Jun 2022 06:02:56 +0000 Message-ID: <20220627060231.GA2159330@hori.linux.bs1.fc.nec.co.jp> References: <20220623235153.2623702-1-naoya.horiguchi@linux.dev> <20220623235153.2623702-2-naoya.horiguchi@linux.dev> <0b69e3ef-0123-4575-b68d-4d9b2067aa0e@huawei.com> <20220624083428.GA2070418@hori.linux.bs1.fc.nec.co.jp> In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 111ee237-8abd-400d-ac31-08da5802aead x-ms-traffictypediagnostic: OS3PR01MB7431:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: IFLkUijAzDfNq5lCREIHqjbd0OAu45hmdKkiQoarzTB2pa3qrMIiXMiLDFHQHUA6+9Kr+nke8bFmw6awSZFqTZeElkS2eFXd10CGq/8OuEL8wi6myMeHw2SMQwK7tYRDCm1IjGeSl1fAq/gsu1PbinMRW49NpcaZCQV3mpNS8yq+RAysxZFBafazz1ZxHUYqJ1LJKL1AaDTlfZm5Z1oKVgqRZwsyN+46FO9iMxuYYv6Lt31sbQsN7Je5mOf7j7F7c1LpfsCQ3xIQVrllQKhpkrR8AjL4mDiOwmhzWS9o6ew6QPP4HLc1uWCa/scfphWtEmlTiNVB5fDwUgxvU+QGQleM8NuNNLeiShxAxEw0MN/elHIbU/l038PQk74W27lbyDtL7pwKh49ho8JgI4tOwlpduj3cUOyYLTmm2aoeYCbOq/Am/qYZoCrwHaWkid6dXKzejpvGnYeXjnXiaW7YtylsCgCwcaLoEzaIF/3XNtA/uu/A1O4u6rnfNivIJBN476zk+WEM5hIu0x3WW6g5bE8hueZBm1/T5j5dP0z0W96k1Q35Ug7STJMC7yaYuwCOfDfbF6sof8P5Xjam/ACfeQ1MlQ/ZH20Pkt0v6rYXuYmwfNrvQ3pYMmxfqorXpKsQa+EeI7ut6lkdKb0x8Pkni0VhFyuPJYcda5a/NbTy5UTrTxrTB/QTy0778YKbQN8wPDsaoyOUL0iLGCVlFp6NKQikY3R9YbPYhKfLaih0JpDmVQ9NGmnbYQWiIpJleYk7rjEfcjDXefITd7Olsi5bWUJCoHKiarQMpN6SuBMOY9A= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYWPR01MB8591.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(346002)(376002)(136003)(39860400002)(396003)(366004)(55236004)(82960400001)(4326008)(38100700002)(86362001)(122000001)(71200400001)(7416002)(6506007)(41300700001)(478600001)(53546011)(8936002)(2906002)(85182001)(83380400001)(5660300002)(6916009)(54906003)(26005)(6512007)(9686003)(6486002)(1076003)(76116006)(38070700005)(66946007)(316002)(64756008)(66556008)(186003)(8676002)(33656002)(66476007)(66446008);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?aXpXdzdSaEVZbzEwUTdtbTdMbllVVnB1VW96M3B5dnM2eW1RRUZOcWZHV09p?= =?utf-8?B?ZFRrOTl6blNsdTJCVUpGZmU2Q0J6V2pEUWlUNEJ1QWM0bmpmS1lLTC9icXov?= =?utf-8?B?Ny9Ua3dZRWd2SDNYdHdDdGIvTmlDcWwyTEVudjl0U1NySjQ0anplVnNLbE9O?= =?utf-8?B?UDcrdkpnaWkxa1BqbkhKNjhMVzNDa3kzbEQrRlhnYjRJOVdWc2pXaUdsbUxI?= =?utf-8?B?M0dFSDF1SVJLTlR3UlhpS3ZsclJMVTAvWDUxR053c0xIYmVsdHRkMDdybXJF?= =?utf-8?B?Q0tRRFpXVHpEczFNazY0TVNkTC9iNE9XRHNma2dXbEUzeGZxUGcwVWR3UWtz?= =?utf-8?B?eFZHL1BpakFJTHBHQ3h6cmo0SDJjbVFJak1wcWJsWEVCQk1YMUdNeFBKckk0?= =?utf-8?B?RDZoMnBGUEU3ZmdjRGpHa0ZrSjBnSy8zWThnT29tM3JKcWh5dHYzaG5MUVNM?= =?utf-8?B?cFlKNWV4T1ZRSzBIUW5ZMHVBNjMxN1g2Tm5tOGxNQnE1QXdlSU5obVdZNEh3?= =?utf-8?B?b0ZRTVhpQS81RzB5R1ArNDN3VmIxK01FRGptd1FDWU9DYkhoejNmWm5nVnZJ?= =?utf-8?B?RXRXRkVaMjQxU09IdXdIL1ErZWt4ZU9YKzJkVURoU1BobmdIWEZaMmpUYUpj?= =?utf-8?B?UTMvY0Qwb1RzMXlaVktoSmNxVE9VeXlDNXpsK1ZkQTFQSG54WG1Mb3JPNlNB?= =?utf-8?B?aWFWSHZVTUMrUS9QTjg5dEd3R1pHY1RKN3B4V2Y0Z0VybFQrUVB3VTRORHQw?= =?utf-8?B?TDFLaW5TMFRuWjMyaEt2QmI2ZHUvbzh1SzNPL1JKeHBuQlZGRVpib29aU2xV?= =?utf-8?B?aWxYRStoUGVHTU1teDRBNS9pUHcyRlNkdjdGaU5oRXEvVkRQSHhXRjhtTHds?= =?utf-8?B?aTYwazJTaCsybzcxSEJIOG5YdXNPTDljcWIySEVscTl0QkJoRG9xUzBQWTlS?= =?utf-8?B?K3BOam9CVHVYL3piL2trUW1QZnFRSGkzdmpTMmVHNmpSamxnYUhQQmo3aVJx?= =?utf-8?B?SjlQMVhla041cnQ0bVVVSkl5NDVMdVJuSlV1WVZYbjdMZjdzOWdRSk5NYkxN?= =?utf-8?B?YWtIUzdDTkw3M2g0aFYwWW94a1FZbFVpeFYrYThIMTVBSjltak5GVFE0cWdI?= =?utf-8?B?NDlKdUpLRUg1alAvNHZYR1ZvMEhqNlROdm1vMXl1cHVJbktpbHFjYVJuYTRq?= =?utf-8?B?Slh6Ym9zRzFYYk1RcTlzakcrdkRyUDZpclQ4L2RVK1lnQmtCUjNqbXhDM0Rm?= =?utf-8?B?dXJQZVd5K1R0RzEvbzk1VW14c1JQVUQwWm9jWTNZOW5JanpHbUQ2TkFBS2hF?= =?utf-8?B?WndqZ2MrUnhmNFdsTjhVOUR1NnlWUkZDQWRURFlQOE45d3VkdndhelBudEZ3?= =?utf-8?B?QVFsWEppMHlLRld4QTVFTTJIT3EvRkZmbngvNzRzbWo1ZmRSRUlPb25Gd2d5?= =?utf-8?B?R2NFZE1kSEI4UEJyVHRad3ZqckdpSjRtWjhIWW5NSzMvNU03Y1RhTnozWTFN?= =?utf-8?B?OFV0OFBEY0NJc2VCVDVMb1hRUE9DK1pLUXY1VVJpbFJPdkluM0R2RTJDZDlV?= =?utf-8?B?OG0zWk03aXJId3RrZ1pKK3NnTmN4Q1hlM2VrMG05V1B0ZEVIMFlNZ0xMMVk2?= =?utf-8?B?UWRzb0J1T3BPdndaUWZONlJ3S0psZ0UwOGtPNUZONDdZNzB5cnplMC9wOWZU?= =?utf-8?B?T2p6VlQwZUdlN0tCVlowU21hMURWMFJMZkZXc0I1ZWRJRnJPYkk3ZkxsRFJS?= =?utf-8?B?cXkvb0Y0bWI2aW1MVHpMQldONE1uUWRaaHBzZVpicmZ6ZHErbUQyYnJQMzBG?= =?utf-8?B?UWJhOWYxcmhlN2ZmTlBZVlFIQ2U4MVRxZkZzd1R1NjdZZFBLeGVDL3BxQ2NX?= =?utf-8?B?aWJrSUFyUkozVXJYWlhrbWtIczNhSWtQOXI2b0lGMmJQMk1ZM002Tnh2M0Nu?= =?utf-8?B?Zm9xNjFsM243R1hPQVh3Z2FKVmxza1RwK0h0Y1FmUjl1RGNwVnNQWmMrSTY3?= =?utf-8?B?TnlCVGhSRHFGQlhVQUNucGF1TDBsdVdPYnE1Nm5Xc1VkWXhvQ3ZWRlhtV3pi?= =?utf-8?B?R3h6TmdUNGpORk12bDNISm1BQkw1a3MwcXJ3Q2oyRXZoRGFCRFU1OVYrMldi?= =?utf-8?B?UmE2bXRTZjNNZHhjU0oyUS84N25LTW5ObjFTbms0ODVvZ3VnaVY1RnNDejMr?= =?utf-8?B?SXc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <3175DA0912D5D842B4ADFB1812224244@jpnprd01.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nec.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB8591.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 111ee237-8abd-400d-ac31-08da5802aead X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jun 2022 06:02:56.9830 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: e67df547-9d0d-4f4d-9161-51c6ed1f7d11 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: yvn3HC5dvmT8HUfGAqR69aCPyznZ4W0g4Gnl3pyelbiivoczdMf37nZOel31NZ15vz6cHivDcG3FOpJ1fTGFzA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS3PR01MB7431 ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1656309782; a=rsa-sha256; cv=pass; b=NyXv87WbZS6jMAgLfaUveOpSIBfoyIJIzBNaFz+Oy7ug/uSmpwZNjVnTGR3c2DMPcN014q CqJj9Bg0P7+B41UlVGD2TYtlQZLW+gtwvspauvJUILOHXC9ENOHY/ScmFcDWmZ7A5dh/NN XEL6mhb0isNONyBPPFZPQAPtRFLlU9w= ARC-Authentication-Results: i=2; imf04.hostedemail.com; dkim=pass header.d=nec.com header.s=selector1 header.b=NpNO17ab; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=nec.com; spf=pass (imf04.hostedemail.com: domain of naoya.horiguchi@nec.com designates 40.107.113.77 as permitted sender) smtp.mailfrom=naoya.horiguchi@nec.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1656309782; 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=DIqWmj2oh6xub4o8bsyHnmDHI34sRzvSD1pq7xU4PiI=; b=4WU5/qukaSWOD5uMN7fLybDBelmP8hM8DyYg+WEk8CQq0eakvGMkKFGaV/7NP2c8UmGVbW sqv+2LBxAw0kcVaVx2hR4kU/75oh8ApgH2ixjkpsKn06+jqTb3k1rr3GwueQipEMcr8HFu 8hjKkkXO76ig9HUqz7kz3pu6jQ2EQKk= X-Stat-Signature: ynxk7i8b66mq71ftexee6w576jwyt8sx X-Rspamd-Queue-Id: 930E540012 Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=nec.com header.s=selector1 header.b=NpNO17ab; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=nec.com; spf=pass (imf04.hostedemail.com: domain of naoya.horiguchi@nec.com designates 40.107.113.77 as permitted sender) smtp.mailfrom=naoya.horiguchi@nec.com X-Rspamd-Server: rspam10 X-Rspam-User: X-HE-Tag: 1656309780-63769 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: T24gRnJpLCBKdW4gMjQsIDIwMjIgYXQgMTI6MTE6MDdQTSAtMDcwMCwgTWlrZSBLcmF2ZXR6IHdy b3RlOg0KPiBPbiAwNi8yNC8yMiAwODozNCwgSE9SSUdVQ0hJIE5BT1lBKOWggOWPoyDnm7TkuZ8p IHdyb3RlOg0KPiA+IE9uIEZyaSwgSnVuIDI0LCAyMDIyIGF0IDA0OjE1OjE5UE0gKzA4MDAsIE1p YW9oZSBMaW4gd3JvdGU6DQo+ID4gPiBPbiAyMDIyLzYvMjQgMTY6MDMsIE11Y2h1biBTb25nIHdy b3RlOg0KPiA+ID4gPiBPbiBGcmksIEp1biAyNCwgMjAyMiBhdCAxMDoyNTo0OEFNICswODAwLCBN aWFvaGUgTGluIHdyb3RlOg0KPiA+ID4gPj4gT24gMjAyMi82LzI0IDc6NTEsIE5hb3lhIEhvcmln dWNoaSB3cm90ZToNCj4gPiA+ID4+PiBGcm9tOiBOYW95YSBIb3JpZ3VjaGkgPG5hb3lhLmhvcmln dWNoaUBuZWMuY29tPg0KPiA+ID4gPj4+DQo+ID4gPiA+Pj4gSSBmb3VuZCBhIHdlaXJkIHN0YXRl IG9mIDFHQiBodWdlcGFnZSBwb29sLCBjYXVzZWQgYnkgdGhlIGZvbGxvd2luZw0KPiA+ID4gPj4+ IHByb2NlZHVyZToNCj4gPiA+ID4+Pg0KPiA+ID4gPj4+ICAgLSBydW4gYSBwcm9jZXNzIHJlc2Vy dmluZyBhbGwgZnJlZSAxR0IgaHVnZXBhZ2VzLA0KPiA+ID4gPj4+ICAgLSBzaHJpbmsgZnJlZSAx R0IgaHVnZXBhZ2UgcG9vbCB0byB6ZXJvIChpLmUuIHdyaXRpbmcgMCB0bw0KPiA+ID4gPj4+ICAg ICAvc3lzL2tlcm5lbC9tbS9odWdlcGFnZXMvaHVnZXBhZ2VzLTEwNDg1NzZrQi9ucl9odWdlcGFn ZXMpLCB0aGVuDQo+ID4gPiA+Pj4gICAtIGtpbGwgdGhlIHJlc2VydmluZyBwcm9jZXNzLg0KPiA+ ID4gPj4+DQo+ID4gPiA+Pj4gLCB0aGVuIGFsbCB0aGUgaHVnZXBhZ2VzIGFyZSBmcmVlICphbmQq IHN1cnBsdXMgYXQgdGhlIHNhbWUgdGltZS4NCj4gPiA+ID4+Pg0KPiA+ID4gPj4+ICAgJCBjYXQg L3N5cy9rZXJuZWwvbW0vaHVnZXBhZ2VzL2h1Z2VwYWdlcy0xMDQ4NTc2a0IvbnJfaHVnZXBhZ2Vz DQo+ID4gPiA+Pj4gICAzDQo+ID4gPiA+Pj4gICAkIGNhdCAvc3lzL2tlcm5lbC9tbS9odWdlcGFn ZXMvaHVnZXBhZ2VzLTEwNDg1NzZrQi9mcmVlX2h1Z2VwYWdlcw0KPiA+ID4gPj4+ICAgMw0KPiA+ ID4gPj4+ICAgJCBjYXQgL3N5cy9rZXJuZWwvbW0vaHVnZXBhZ2VzL2h1Z2VwYWdlcy0xMDQ4NTc2 a0IvcmVzdl9odWdlcGFnZXMNCj4gPiA+ID4+PiAgIDANCj4gPiA+ID4+PiAgICQgY2F0IC9zeXMv a2VybmVsL21tL2h1Z2VwYWdlcy9odWdlcGFnZXMtMTA0ODU3NmtCL3N1cnBsdXNfaHVnZXBhZ2Vz DQo+ID4gPiA+Pj4gICAzDQo+ID4gPiA+Pj4NCj4gPiA+ID4+PiBUaGlzIHN0YXRlIGlzIHJlc29s dmVkIGJ5IHJlc2VydmluZyBhbmQgYWxsb2NhdGluZyB0aGUgcGFnZXMgdGhlbg0KPiA+ID4gPj4+ IGZyZWVpbmcgdGhlbSBhZ2Fpbiwgc28gdGhpcyBzZWVtcyBub3QgdG8gcmVzdWx0IGluIHNlcmlv dXMgcHJvYmxlbS4NCj4gPiA+ID4+PiBCdXQgaXQncyBhIGxpdHRsZSBzdXJwcml6aW5nIChzaHJp bmtpbmcgcG9vbCBzdWRkZW5seSBmYWlscykuDQo+ID4gPiA+Pj4NCj4gPiA+ID4+PiBUaGlzIGJl aGF2aW9yIGlzIGNhdXNlZCBieSBoc3RhdGVfaXNfZ2lnYW50aWMoKSBjaGVjayBpbg0KPiA+ID4g Pj4+IHJldHVybl91bnVzZWRfc3VycGx1c19wYWdlcygpLiBUaGlzIHdhcyBpbnRyb2R1Y2VkIHNv IGxvbmcgYWdvIGluIDIwMDgNCj4gPiA+ID4+PiBieSBjb21taXQgYWE4ODhhNzQ5NzdhICgiaHVn ZXRsYjogc3VwcG9ydCBsYXJnZXIgdGhhbiBNQVhfT1JERVIiKSwgYW5kDQo+ID4gPiA+Pj4gaXQg c2VlbXMgdG8gbWUgdGhhdCB0aGlzIGNoZWNrIGlzIG5vIGxvbmdlciB1bm5lY2Vzc2FyeS4gTGV0 J3MgcmVtb3ZlIGl0Lg0KPiANCj4gVGhhbmsgeW91IGZvciBmaW5kaW5nIHRoaXMhISENCj4gDQo+ ID4gPiA+Pj4gKysrIGIvbW0vaHVnZXRsYi5jDQo+ID4gPiA+Pj4gQEAgLTI0MzIsMTAgKzI0MzIs NiBAQCBzdGF0aWMgdm9pZCByZXR1cm5fdW51c2VkX3N1cnBsdXNfcGFnZXMoc3RydWN0IGhzdGF0 ZSAqaCwNCj4gPiA+ID4+PiAgCS8qIFVuY29tbWl0IHRoZSByZXNlcnZhdGlvbiAqLw0KPiA+ID4g Pj4+ICAJaC0+cmVzdl9odWdlX3BhZ2VzIC09IHVudXNlZF9yZXN2X3BhZ2VzOw0KPiA+ID4gPj4+ ICANCj4gPiA+ID4+PiAtCS8qIENhbm5vdCByZXR1cm4gZ2lnYW50aWMgcGFnZXMgY3VycmVudGx5 ICovDQo+ID4gPiA+Pj4gLQlpZiAoaHN0YXRlX2lzX2dpZ2FudGljKGgpKQ0KPiA+ID4gPj4+IC0J CWdvdG8gb3V0Ow0KPiA+ID4gPj4+IC0NCj4gPiA+ID4+DQo+ID4gPiA+PiBJSVVDIGl0IG1pZ2h0 IGJlIGJldHRlciB0byBkbyB0aGUgYmVsb3cgY2hlY2s6DQo+ID4gPiA+PiAJLyoNCj4gPiA+ID4+ IAkgKiBDYW5ub3QgcmV0dXJuIGdpZ2FudGljIHBhZ2VzIGN1cnJlbnRseSBpZiBydW50aW1lIGdp Z2FudGljIHBhZ2UNCj4gPiA+ID4+IAkgKiBhbGxvY2F0aW9uIGlzIG5vdCBzdXBwb3J0ZWQuDQo+ ID4gPiA+PiAJICovDQo+ID4gPiA+PiAJaWYgKGhzdGF0ZV9pc19naWdhbnRpYyhoKSAmJiAhZ2ln YW50aWNfcGFnZV9ydW50aW1lX3N1cHBvcnRlZCgpKQ0KPiA+ID4gPj4gCQlnb3RvIG91dDsNCj4g PiA+ID4+DQo+ID4gPiA+IA0KPiA+ID4gPiBUaGUgY2hhbmdlIGxvb2tzIGdvb2QgdG8gbWUuIEhv d2V2ZXIsIHRoZSBjb21tZW50cyBhYm92ZSBpcyB1bm5lY2Vzc2FyeQ0KPiA+ID4gPiBzaW5jZSBn aWdhbnRpY19wYWdlX3J1bnRpbWVfc3VwcG9ydGVkKCkgaXMgc3RyYWlnaHRmb3J3YXJkLg0KPiA+ ID4gDQo+ID4gPiBBZ3JlZS4gVGhlIGNvbW1lbnRzIGNhbiBiZSByZW1vdmVkLg0KPiA+IA0KPiA+ IFRoYW5rIHlvdSwgYm90aC4gQWRkaW5nICFnaWdhbnRpY19wYWdlX3J1bnRpbWVfc3VwcG9ydGVk IHdpdGhvdXQgY29tbWVudA0KPiA+IG1ha2VzIHNlbnNlIHRvIG1lLg0KPiANCj4gVGhlIGNoYW5n ZSBhYm92ZSBtYWtlcyBzZW5zZSB0byBtZS4gIEhvd2V2ZXIsIC4uLg0KPiANCj4gSWYgd2UgbWFr ZSB0aGUgY2hhbmdlIGFib3ZlLCB3aWxsIHdlIGhhdmUgdGhlIHNhbWUgc3RyYW5nZSBzaXR1YXRp b24gZGVzY3JpYmVkDQo+IGluIHRoZSBjb21taXQgbWVzc2FnZSB3aGVuICFnaWdhbnRpY19wYWdl X3J1bnRpbWVfc3VwcG9ydGVkKCkgaXMgdHJ1ZT8NCj4gDQo+IElJVUMsICFnaWdhbnRpY19wYWdl X3J1bnRpbWVfc3VwcG9ydGVkIGltcGxpZXMgdGhhdCBnaWdhbnRpYyBodWdldGxiDQo+IHBhZ2Vz IGNhbiBub3QgYmUgYWxsb2NhdGVkIG9yIGZyZWVkIGF0IHJ1biB0aW1lLiAgVGhleSBjYW4gb25s eSBiZQ0KPiBhbGxvY2F0ZWQgYXQgYm9vdCB0aW1lLiAgU28sIHRoZXJlIHNob3VsZCBORVZFUiBi ZSBzdXJwbHVzIGdpZ2FudGljDQo+IHBhZ2VzIGlmICFnaWdhbnRpY19wYWdlX3J1bnRpbWVfc3Vw cG9ydGVkKCkuDQoNCkkgaGF2ZSB0aGUgc2FtZSB1bmRlcnN0YW5kaW5nIGFzIHRoZSBhYm92ZS4N Cg0KPiAgVG8gYXZvaWQgdGhpcyBzaXR1YXRpb24sDQo+IHBlcmhhcHMgd2Ugc2hvdWxkIGNoYW5n ZSBzZXRfbWF4X2h1Z2VfcGFnZXMgYXMgZm9sbG93cyAobm90IHRlc3RlZCk/DQoNClRoZSBzdWdn ZXN0ZWQgZGlmZiBsb29rcyBjbGVhcmVyIGFib3V0IHdoYXQgaXQgZG9lcywgc28gSSdkIGxpa2Ug dG8gdGFrZSBpdA0KaW4gdGhlIG5leHQgdmVyc2lvbi4gIFRoZW4sIHdoYXQgZG8gd2UgZG8gb24g dGhlICJpZiAoaHN0YXRlX2lmX2dpZ2FudGljKCkpIg0KY2hlY2sgaW4gcmV0dXJuX3VudXNlZF9z dXJwbHVzX3BhZ2VzIGluIHRoZSBvcmlnaW5hbCBzdWdnZXN0aW9uPyAgU2hvdWxkIGl0DQpiZSBr ZXB0IGFzIGlzLCBvciByZW1vdmVkLCBvciBjaGVja2VkIHdpdGggIWdpZ2FudGljX3BhZ2VfcnVu dGltZV9zdXBwb3J0ZWQoKT8NCkkgZ3Vlc3MgdGhhdCB0aGUgbmV3IGNoZWNrcyBwcmV2ZW50IGNh bGxpbmcgcmV0dXJuX3VudXNlZF9zdXJwbHVzX3BhZ2VzKCkNCmR1cmluZyBwb29sIHNocmlua2lu Zywgc28gdGhlIGNoZWNrIHNlZW1zIG5vdCBuZWNlc3NhcnkgYW55IG1vcmUuDQoNClRoYW5rcywN Ck5hb3lhIEhvcmlndWNoaQ0KDQo+IA0KPiAtLSANCj4gTWlrZSBLcmF2ZXR6DQo+IA0KPiANCj4g ZGlmZiAtLWdpdCBhL21tL2h1Z2V0bGIuYyBiL21tL2h1Z2V0bGIuYw0KPiBpbmRleCA1ZWFiYjgw MDlkOGEuLmM3OGQ2YzIwZTZiMCAxMDA2NDQNCj4gLS0tIGEvbW0vaHVnZXRsYi5jDQo+ICsrKyBi L21tL2h1Z2V0bGIuYw0KPiBAQCAtMzQxNiw3ICszNDE2LDggQEAgc3RhdGljIGludCBzZXRfbWF4 X2h1Z2VfcGFnZXMoc3RydWN0IGhzdGF0ZSAqaCwgdW5zaWduZWQgbG9uZyBjb3VudCwgaW50IG5p ZCwNCj4gIAkgKiB0aGUgdXNlciB0cmllcyB0byBhbGxvY2F0ZSBnaWdhbnRpYyBwYWdlcyBidXQg bGV0IHRoZSB1c2VyIGZyZWUgdGhlDQo+ICAJICogYm9vdHRpbWUgYWxsb2NhdGVkIGdpZ2FudGlj IHBhZ2VzLg0KPiAgCSAqLw0KPiAtCWlmIChoc3RhdGVfaXNfZ2lnYW50aWMoaCkgJiYgIUlTX0VO QUJMRUQoQ09ORklHX0NPTlRJR19BTExPQykpIHsNCj4gKwlpZiAoaHN0YXRlX2lzX2dpZ2FudGlj KGgpICYmICghSVNfRU5BQkxFRChDT05GSUdfQ09OVElHX0FMTE9DKSB8fA0KPiArCQkJCQkhZ2ln YW50aWNfcGFnZV9ydW50aW1lX3N1cHBvcnRlZCgpKSkgew0KPiAgCQlpZiAoY291bnQgPiBwZXJz aXN0ZW50X2h1Z2VfcGFnZXMoaCkpIHsNCj4gIAkJCXNwaW5fdW5sb2NrX2lycSgmaHVnZXRsYl9s b2NrKTsNCj4gIAkJCW11dGV4X3VubG9jaygmaC0+cmVzaXplX2xvY2spOw0KPiBAQCAtMzQ2NCw2 ICszNDY1LDE5IEBAIHN0YXRpYyBpbnQgc2V0X21heF9odWdlX3BhZ2VzKHN0cnVjdCBoc3RhdGUg KmgsIHVuc2lnbmVkIGxvbmcgY291bnQsIGludCBuaWQsDQo+ICAJCQlnb3RvIG91dDsNCj4gIAl9 DQo+ICANCj4gKwkvKg0KPiArCSAqIFdlIGNhbiBub3QgZGVjcmVhc2UgZ2lnYW50aWMgcG9vbCBz aXplIGlmIHJ1bnRpbWUgbW9kaWZpY2F0aW9uDQo+ICsJICogaXMgbm90IHN1cHBvcnRlZC4NCj4g KwkgKi8NCj4gKwlpZiAoaHN0YXRlX2lzX2dpZ2FudGljKGgpICYmICFnaWdhbnRpY19wYWdlX3J1 bnRpbWVfc3VwcG9ydGVkKCkpIHsNCj4gKwkJaWYgKGNvdW50IDwgcGVyc2lzdGVudF9odWdlX3Bh Z2VzKGgpKSB7DQo+ICsJCQlzcGluX3VubG9ja19pcnEoJmh1Z2V0bGJfbG9jayk7DQo+ICsJCQlt dXRleF91bmxvY2soJmgtPnJlc2l6ZV9sb2NrKTsNCj4gKwkJCU5PREVNQVNLX0ZSRUUobm9kZV9h bGxvY19ub3JldHJ5KTsNCj4gKwkJCXJldHVybiAtRUlOVkFMOw0KPiArCQl9DQo+ICsJfQ0KPiAr DQo+ICAJLyoNCj4gIAkgKiBEZWNyZWFzZSB0aGUgcG9vbCBzaXplDQo+ICAJICogRmlyc3QgcmV0 dXJuIGZyZWUgcGFnZXMgdG8gdGhlIGJ1ZGR5IGFsbG9jYXRvciAoYmVpbmcgY2FyZWZ1bA==