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 708FAEB64DD for ; Mon, 7 Aug 2023 09:55:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D1C1C8D0002; Mon, 7 Aug 2023 05:55:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CCCF06B0074; Mon, 7 Aug 2023 05:55:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B1F018D0002; Mon, 7 Aug 2023 05:55:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id A09AB6B0072 for ; Mon, 7 Aug 2023 05:55:55 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 6E3F81A0A33 for ; Mon, 7 Aug 2023 09:55:55 +0000 (UTC) X-FDA: 81096852270.30.B504C82 Received: from mailgw01.mediatek.com (mailgw01.mediatek.com [216.200.240.184]) by imf16.hostedemail.com (Postfix) with ESMTP id 48425180013 for ; Mon, 7 Aug 2023 09:55:51 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=mediatek.com header.s=dk header.b=iePr54rg; dkim=pass header.d=mediateko365.onmicrosoft.com header.s=selector2-mediateko365-onmicrosoft-com header.b=Vov5akSm; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf16.hostedemail.com: domain of john.hsu@mediatek.com designates 216.200.240.184 as permitted sender) smtp.mailfrom=john.hsu@mediatek.com; dmarc=pass (policy=quarantine) header.from=mediatek.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1691402151; 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=1v+tqW+G+Tv3ViEl82CFldJukkiQPtfXBnnJi9RjfB0=; b=FYdi47BWvMmo2szxGnSqA6G26bY6hzL4vF5YT/XQ+k7hNN6uK3VnmV8qCFjVP2yiNSZIdi Cgp2wspGzEQxFG6T4AMWNHOwzFPRy6LXNQ/smCm4Q1j4PQb7x7K9shFwzkyNdxmS8C8yGU nF+vZfVEyV7xUsALXayn88HsQ0qMSEE= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1691402151; a=rsa-sha256; cv=pass; b=ki02qCuC6vFO8ZbtZt2f+nKiqXHTDRObE77tYxNPBmUKsrMAzPXXAeOSH1CjpLKMmTo+jp E1wivFZ7XAYVKGmEBPzR/TSXQHF7qhbEDgSSfXazz2yLz/SnUPion0kma8xLMi2Ynx6dJM 5PYpyG71enaRNVDDLZG9AnkS2/IDmQ0= ARC-Authentication-Results: i=2; imf16.hostedemail.com; dkim=pass header.d=mediatek.com header.s=dk header.b=iePr54rg; dkim=pass header.d=mediateko365.onmicrosoft.com header.s=selector2-mediateko365-onmicrosoft-com header.b=Vov5akSm; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf16.hostedemail.com: domain of john.hsu@mediatek.com designates 216.200.240.184 as permitted sender) smtp.mailfrom=john.hsu@mediatek.com; dmarc=pass (policy=quarantine) header.from=mediatek.com X-UUID: 8c1902c6350811ee912e1518a6540028-20230807 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=MIME-Version:Content-Transfer-Encoding:Content-ID:Content-Type:In-Reply-To:References:Message-ID:Date:Subject:CC:To:From; bh=1v+tqW+G+Tv3ViEl82CFldJukkiQPtfXBnnJi9RjfB0=; b=iePr54rg3H/7d+04mpJZiHPaXiyvJTS3WQ71KWEZ85Tc8S+lKHaWuLczRwjc+unvD/EsLEFUAOAwmryFcrYeynvV6+JyLe363clCqvBA6yo+cWzYJtlnttGs6k0ZMUTY21L6cRZMzvAMsmWvT9tZz9zVbiVJfUQlZUgAud0FKzw=; X-CID-UNFAMILIAR: 1 X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.30,REQID:b154ae17-7cf9-4171-8a34-e295db2b08a4,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:54,FILE:0,BULK:0,RULE:Release_Ham,ACTION :release,TS:54 X-CID-INFO: VERSION:1.1.30,REQID:b154ae17-7cf9-4171-8a34-e295db2b08a4,IP:0,URL :0,TC:0,Content:0,EDM:0,RT:0,SF:54,FILE:0,BULK:0,RULE:Release_HamU,ACTION: release,TS:54 X-CID-META: VersionHash:1fcc6f8,CLOUDID:19f53bb4-a467-4aa9-9e04-f584452e3794,B ulkID:230807175513BS2P3JSH,BulkQuantity:1,Recheck:0,SF:29|28|16|19|48|102, TC:nil,Content:0,EDM:-3,IP:nil,URL:0,File:nil,Bulk:40,QS:nil,BEC:nil,COL:0 ,OSI:0,OSA:0,AV:0,LES:1,SPR:NO,DKR:PA,DKP:0,BRR:0,BRE:0 X-CID-BVR: 0,NGT X-CID-BAS: 0,NGT,0,_ X-CID-FACTOR: TF_CID_SPAM_SDM,TF_CID_SPAM_USA,TF_CID_SPAM_FSD,TF_CID_SPAM_SNR X-UUID: 8c1902c6350811ee912e1518a6540028-20230807 Received: from mtkmbs14n2.mediatek.inc [(172.21.101.76)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1000908383; Mon, 07 Aug 2023 02:55:32 -0700 Received: from mtkmbs10n1.mediatek.inc (172.21.101.34) by mtkmbs13n1.mediatek.inc (172.21.101.193) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Mon, 7 Aug 2023 17:54:55 +0800 Received: from APC01-TYZ-obe.outbound.protection.outlook.com (172.21.101.237) by mtkmbs10n1.mediatek.inc (172.21.101.34) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Mon, 7 Aug 2023 17:54:54 +0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HVsYa6WN3nDtV7pxSYdle1LBE8oFErR0ugusj/eIxKaSsklfPUfjiJ8gsPTaYmcajja75zweK7A/otbpTMCbTl3tAcZ2tdwA6Qb6OuLGBwFKzExdoiO9Sw2L4BZqdTbbSUcihpSHiBQNqIt3EqyqAsNIl/urU6Lklbi6XvH4HhnkB9WGnOnlVltTN5g5SQAmKUZ5QnuWLGLn4e5tlmOE94Hh2G0GUmNb+NuYL22Z7AMjdMKr8RvQ2CReRphXZx8Nsajg1F6x55CGWEArVQnK0FXS1dck4jdwITptSuaj0bPNz0vRr1vKqDDxTqxjRr4qP7erEp1EnhvaxrJ7T+4eeA== 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=1v+tqW+G+Tv3ViEl82CFldJukkiQPtfXBnnJi9RjfB0=; b=bhFCEv/L93DXGdPXMZzw3OVp/NmEHGeI9BqS/2jOtMv6YX/FRSWl2ZamL+oUkQyaj/qxlUgePtgNu2ehJoRMiUv3Z6ic6HkWw1euLWg8wnDkjJ+o83HL9o23xVAdcnZKzQPPiBGyTtj6AQip8ew4WGbNDyScUBY3LvQXEh17LkDBogPPuRXRHftNRGQtt9aUgO6NlIrsHv3nZLWF7EXu1YSNcEosh1FmDD1y7QPqxoXL1YXWHEJJSCyjVhTtSDWFSBiltUkaTEUuBOrcrJDeITt7WJQ7iw5/jaW7o943D/+5Hfsd/gie+zoMbm/7Hh9UOOVz4HcclwuwzK3XuB0vKA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mediatek.com; dmarc=pass action=none header.from=mediatek.com; dkim=pass header.d=mediatek.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mediateko365.onmicrosoft.com; s=selector2-mediateko365-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1v+tqW+G+Tv3ViEl82CFldJukkiQPtfXBnnJi9RjfB0=; b=Vov5akSmoafU9Ub7LWXS7/2oARDyWC0Rta7f3xyq/W6TkPfR3geqqCwjq93/LFj3Vwix67IsInZgwiujwTNYhhGHRIHvsg1XbYtLWWvbu3GAAb5F3GhvhK8F5vlM2ZTxWbjDORZyD4ItElE8k+GB5O4TQM0B7/y7AztlOf34JHc= Received: from PUZPR03MB5963.apcprd03.prod.outlook.com (2603:1096:301:b3::11) by TY0PR03MB6824.apcprd03.prod.outlook.com (2603:1096:400:219::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.25; Mon, 7 Aug 2023 09:54:52 +0000 Received: from PUZPR03MB5963.apcprd03.prod.outlook.com ([fe80::2b8b:2de2:f8da:155e]) by PUZPR03MB5963.apcprd03.prod.outlook.com ([fe80::2b8b:2de2:f8da:155e%4]) with mapi id 15.20.6652.025; Mon, 7 Aug 2023 09:54:52 +0000 From: =?utf-8?B?Sm9obiBIc3UgKOioseawuOe/sCk=?= To: "Liam.Howlett@Oracle.com" CC: =?utf-8?B?QW5kcmV3IFlhbmcgKOaliuaZuuW8tyk=?= , "linux-kernel@vger.kernel.org" , =?utf-8?B?UXVuLXdlaSBMaW4gKOael+e+pOW0tCk=?= , "surenb@google.com" , "linux-mm@kvack.org" , =?utf-8?B?Q2hpbndlbiBDaGFuZyAo5by16Yym5paHKQ==?= , =?utf-8?B?S3Vhbi1ZaW5nIExlZSAo5p2O5Yag56mOKQ==?= , =?utf-8?B?Q2FzcGVyIExpICjmnY7kuK3mpq4p?= , "akpm@linux-foundation.org" , "yuzhao@google.com" , "maple-tree@lists.infradead.org" Subject: Re: [BUG] trigger BUG_ON in mas_store_prealloc when low memory Thread-Topic: [BUG] trigger BUG_ON in mas_store_prealloc when low memory Thread-Index: AQHZmq2hr8VIEXfZDUmuykLw57Rh9K+IzHcAgAEbhYCAAJTEAIACtPMAgCAPjwCABeNrgIAAGmyAgAP+74CACnCxgIAdRlaA Date: Mon, 7 Aug 2023 09:54:52 +0000 Message-ID: <981aac92a51c4e2cfd2ca83d11742e5741e60285.camel@mediatek.com> References: <9cb8c599b1d7f9c1c300d1a334d5eb70ec4d7357.camel@mediatek.com> <20230613141114.bwbnqsdazqbmyj3u@revolver> <3b14df2fc2a7f18fe12f87a27574b7d40f2899ba.camel@mediatek.com> <20230614155826.cxcpv33hs763gyrg@revolver> <20230706185436.agobbv72o3hma43z@revolver> <3507fdacf001c49f4c73f2952257beabfe9e1a53.camel@mediatek.com> <20230710142425.t5vhrqkjd7ugbmad@revolver> <20230719185135.nyun5fvcuv3ydku4@revolver> In-Reply-To: <20230719185135.nyun5fvcuv3ydku4@revolver> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PUZPR03MB5963:EE_|TY0PR03MB6824:EE_ x-ms-office365-filtering-correlation-id: 4d2a8870-e1c9-4bfe-e42a-08db972c5897 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +FHUgmHbMbKu4lxcbyKShtC8HDvYC2GhkvBspFl0B7EUp9KfS5VYuhojjuDNtpi6prEXEc6axFQ5LQ8Hj9YRmUwR/3Vs0tk9xqif/sw2ixYkzFMQAQ30/u5bJLGXBQHMEbxObRpzMw7NPpt0FkhTH5baQv5xMYB1VuwqzwiBLgk0IeE74iPlHcK5SmbWj3/ULF4G4U0vJgNQee4euvOv6yxVmLrfgoCWGqdbF740/OPmK4+5H/eO/vseFPQaRdFjRNK32mliqEtMvPaNgZvfLEXNBnQSk7YZ0uUL8AWvSbc+T0k5EkdM+nuc3+Im1hhoOMOOB1Fs5DJ4dsDzLoOWVfSKNCy6lzSuTO42UqZMAsEh5usSmQcAiUhb4Ull9yiulWn+M9N4xQwAIQ3BMisLqhhSZekvzWsdS1iQjtAZSsIzZLNVxhGq4yltj/iszbSOMSU6AaAMc34p/V/2ysHFcfroIif+QRKTxlnlZfL5d24lJk4op9XGV5qy9uTlDGiq5pQacYe1DCJvV0QnPWoGSLvjGsS+mQ5AOp0vVMbAHzZui2y0R4QfC7qTiQhqRLa2oiFeyjPf8JICcB4Xty5fXdrZeXB/VRMwLe9edbuno/pYuoJ4GkqApV1JplcCd16qDYd212yfJ5gxeBhc8x3TUerib9f9oPTiILJYAZr64sE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PUZPR03MB5963.apcprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(346002)(376002)(136003)(366004)(451199021)(186006)(1800799003)(478600001)(6486002)(6512007)(6916009)(71200400001)(122000001)(64756008)(66556008)(91956017)(26005)(66446008)(66476007)(76116006)(66946007)(4326008)(316002)(54906003)(83380400001)(36756003)(85182001)(30864003)(2906002)(5660300002)(86362001)(38070700005)(2616005)(38100700002)(6506007)(41300700001)(8676002)(8936002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dXVYSm55OGxJTGZnQjNqSjRvdlRycEtpS2QxQ1pKd000UUZod0kvd1BDWDZD?= =?utf-8?B?OEdFOGNRbUl2bHhmS1NrVHgvbDhhZnYxall3Qkw4aXBaQXNBZkwwNFVianNJ?= =?utf-8?B?MEljcWtyOTkvWWlyN2NlT2l2eGN5Zkg3MkVYenhaVUVVYTNBRHlPUnJGV0VX?= =?utf-8?B?ZUYydGVmTHQwN29sd2p1WlUzalpxbmZFejEwbjlzNFphQjJodS9HcWdEcW8y?= =?utf-8?B?VmRCeTZxTHlNSDBTdkxhaE5kMC95cWU5QXUyUmY0MHBwZVNPTEFKd2QybGRB?= =?utf-8?B?Tnc0WWtuVTdjY0cvVHorY0hMM2xGcmxDTXFFcEdiNFdCTFM0aTQya1pjN25T?= =?utf-8?B?RlA5MHZVZHN1ZHZnREZVaElKRWhwVlRwMDdHMjMyYmFQU0MxQUVkYS8veDU5?= =?utf-8?B?U20rQnc1U0FPNUJEbzhMbVZKWXV3NzExS3RnekpEdUwrQnZWdmQyRDlVbXJX?= =?utf-8?B?WDgrRys2UktjQVhDSVE2b1ZJNnJ2NE5iQTlZczVjZGh4QmVqU3RNWDNhQzNi?= =?utf-8?B?eEk1ZDVGaEFBYkJPNHZEVVJGYWI1YVMxWWZFcmNLWnQvUkdOejJSQlQxMkdi?= =?utf-8?B?OU5Hd0E4MkFGQnZyQk1sbHVxQlVzbnZUNnFEMThrMkVEcjN5dld6OTVlZ2Jw?= =?utf-8?B?RXdtQUNCSEtCTU8ySGZGbitFRG1OQUFGbWNXaXpGckM5dVpKcm5lRWpzUmV0?= =?utf-8?B?U1hEZTczcG1wcDRrdjNmSW5MRmd6eWJCMXRyU282SW1EZENBL0dVcDVGYmpL?= =?utf-8?B?N3R5ZkVWZXgrcWU4RDNWZFgvVjFtL1M5YlFhdmo1MVVsRTl5aEFwSmxwRmhT?= =?utf-8?B?TG5ld0Z2bUFwS1laaklUclIxWEkwclIvbnIvOW44ZWpkSEZXNVZVZFZ5YUVW?= =?utf-8?B?a3Q3TEplRlhsTHJEaEgrR09Mb09najJWNjJicXc4Qy9aNEdtczIxTEgyWG9Y?= =?utf-8?B?dlE4RHdOVHd2V3dRREhuL01pbUxVOWl5Q2N2OHhZZjBNdXdHWEJYaS8zaXl6?= =?utf-8?B?VXE0RFBQUXV6K0UvQm1WTmt4bkNXQzVzOGwxWW04RXZqb25xSEYxZ3NyV2pm?= =?utf-8?B?bHRvNUY5VmQxTzMxd1dzaTBBSXozTFRqQXczV0JoVmM5TjBFbElVVThoNXVD?= =?utf-8?B?a3JPZmltTStXdmlaTlQrWWFudUUrRGkrUVRtTFAwdVNVaXZ2aTcyUWlRZGlu?= =?utf-8?B?NnZYbzhkZTRRMCtIUGRLVEFJRVdWeEx1bUtJQVZ1QXQrY2s2elBIbUl1bk9E?= =?utf-8?B?eGRVZllBeTh1NDhDdXJGUU9KdnU2c1BaYTE3ZGQvSklwOU1La3ZmUGFUMEdn?= =?utf-8?B?anU4clNWN1Y1aGZ3T1ZMRVIxUDhRc2hLYU00WjNMN0p1ZkZEQ0MvYStlcFZZ?= =?utf-8?B?UHBBa2ZoU3c5R1pvdDJmcCsycFA0VG9waFVWRTVWU3BnckVza1pGZzFZYUFp?= =?utf-8?B?SFNIQUlwR1A0TWFaRkprUUVXelpDc24xcFNwaHRZOTV2RmVuYlJkQlhxbzNx?= =?utf-8?B?eDl0TzJuMkZnR0JISnVjTDVnbjB6dUhPUGZvZXBlMEZ4MVZpSzRUbVprcWJp?= =?utf-8?B?K1dvUlpqeHdrMnF3MlAzelVBSXdxVlpqNnBmWGFYQ1U4c055TkhpOG1PczhC?= =?utf-8?B?Y1NjanNVaEZkbUQvTDFFOTQwQU9nZUxrUkxadTFUay9pMU5pd08xTXFVTnN4?= =?utf-8?B?dEx4Y20rMUhwdTE1a1NBRzdzSVdqUW5YVTU5MlFaOFlKbklnZkJvT0labDRL?= =?utf-8?B?Q0lkWHE3aE9YTzVxQUZ2Z2pNdzYveFNPbTZxWndiRytnT1NGQjl3YzZ6b2M3?= =?utf-8?B?ZzhjYmdON3NCRWFlc3BGaXBiUjNNNHY2bk11c3VCQ1hNbzVvMlBBUllYU0xK?= =?utf-8?B?Vk81NDVoNW5VMFg4M2tJbXFRTGpnSWh6eC94Znc5dTc5UnpxUGRkQ3EyQzF2?= =?utf-8?B?M3lndTF2OHRXYXFOYVVyMEsveG8yODIraFFzcWhjRFdxU2FxUXR1SE5NaVgr?= =?utf-8?B?UUFzVTNzL2JJSk9SakpFcUNNUFdLdWZtTHBXRjk1SXQ5MFp6VGhVQWt2aDZB?= =?utf-8?B?N0VPVW9vN2xrRUVrSHlhODA2WEcxMDVNZjVKUy9xWHFFUHc3TlZUNmtma1pn?= =?utf-8?B?V2Qxcld0K2RhczBQcTFKbGdZNitmNTVQWGd2SS9NWmw2R0w2N0JPSVBqd2N5?= =?utf-8?B?dFE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: <61553882C16DBC4D92FABF67E629A895@apcprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PUZPR03MB5963.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4d2a8870-e1c9-4bfe-e42a-08db972c5897 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Aug 2023 09:54:52.3579 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a7687ede-7a6b-4ef6-bace-642f677fbe31 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: wECCeLzW+OVPpIzzMPZksupCRNu6mdxuJT0/7S/TlvFLpPWuw5eY/gV3nfLLq9bgPtqz/NJpJZ+5eqsepx5jag== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY0PR03MB6824 X-Stat-Signature: j7ejx5wpk8938ktjuzhpyqm5mygu785p X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 48425180013 X-Rspam-User: X-HE-Tag: 1691402151-790867 X-HE-Meta: U2FsdGVkX18ow50QgQejlqZCb/P4OKGxYt9rCu9zsgR6Ojv0M/zauqmxfJeCDHT9Zb7c8d3O47XO14G0OFtv/haaYyeseNeeqeJjKIUYtPj+FyovbHReAXzOIyYKvtbDS3kOQ/XWGTcpEZD59PxnLCCwspStjXkT3k3l+4e+m8FRlRQceWz2N5c8TWWr8wIKP7DxGxROGe2DzWYe7W2tH060wnUL3XYI8J+I9ksKO4dAUk9te6M0HS/todOlSlNZBE0DWgfblSfEAQ2sxYyZXBlAXPizqAUj9peNNydMVffjl+IyNsrOqjPJCtDFtXFUF9/5aRWXQ6bbKfKYt1c+zPwEKlPfOGuqQTZ9QhWjoU1KRzL0vaokh2ReCc5Mcpe8A1ZnCGYcB961N4JDuI5eIwIgfpV917fCt9Bit2v/jPIiJ53f7aBggzX+KCETp5fTTAz9fAghF2uB0sI3aRO3XbhgSE1D130Jnao4zEawLeeg4akP9XkCGv7/aqtYXoxOIP13dpTxVzjM7ki1OEfGDlGyG+Y/3NkYcdnYwZ3KN93fa3MDmJx18qSoCW90otZkOntWAKVPE8nKLcjcvf89mkFK1sV2AMkk+9k6YJTqaRC0XBhkbtAQ07TMRdp2+xSHxmxwLgnwYieicdsHUd56Ad93Ttdq2vToisPLwt5uHO0EDJxClPABxQ7MV3sFGSEQarBy2f88igVK0pMA+COm8EP/bPzecu1LISVX8aD6injmY3AKqk2cXFn84PExiLJsAgBDXFaLCfKv+oTJSqXoqjIJxn0Uktm6/vDPrCMO7d4B4EP6RoB9J9X3Wzdmm+SDhqfyxIWAZvQTlIqg+400HxDW3VfqdRES/jh0MAmXsCDSm4f1QYjXZTUv6jWPiTipkDoshK9Proeg3KyA78teQXo+nHmujhGvAVYsegKmtsBoXMlMlfdt21oAxjyeUeiWi+GJ9prrXrRMKrsmJLe Y4JbYkB/ MMgolnFlLw18SEu9NddCCayiaRlnDj53RIX05F93fc1lGqnSgdnj60rrZlgd0z6IuVPk3IofzpBLx9+IsuxVqgk85UvzVLJVcFjTC0Ya1agEm3g0HgGyIcM63+94HjB2W/iR6QWQQGD20yd5RvknbhQ7IH+XQRsJij5QTkhGkUbPs2JtNVKhznVpeGFG27HYUtzuKBP1hZATw3ywGjb8Dxs0oWAAcCkPMMpxytpDdsWzx8q4PmLnm/O4itIBi2Jl2dxvEVJsqD2H9rynW7BoHuND2lyP0jpGMLn0KHz8nB9ecseuxcwXiBW+GEeacrONSxnOwenHfiBjg4aFtYUo0Tnzbb6ImjP6A3Cg86C4UwVRRQAppGzovtL1L1d8N6s9ZoQr0/53ctvCVB98s1UDHK1vNEArX7kuMDMmc+Ve9TWpDSBx33hTZYTHgTlCQ/e5GROiOBpT+XzMG18OxuzppKBgqg++p94v/ZWp5skWuVoMz+Ec3+3GhmWdR0ibGJhspmJ4ZeZSkRii5vIhIjBI2WwzgmOtlYG2tcws1yyjqkJIhW9goJFWDD9aYwGA6u6ATxYHGywi/Stm9sZE= 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: T24gV2VkLCAyMDIzLTA3LTE5IGF0IDE0OjUxIC0wNDAwLCBMaWFtIFIuIEhvd2xldHQgd3JvdGU6 DQo+ICAJIA0KPiBFeHRlcm5hbCBlbWFpbCA6IFBsZWFzZSBkbyBub3QgY2xpY2sgbGlua3Mgb3Ig b3BlbiBhdHRhY2htZW50cyB1bnRpbA0KPiB5b3UgaGF2ZSB2ZXJpZmllZCB0aGUgc2VuZGVyIG9y IHRoZSBjb250ZW50Lg0KPiAgKiBKb2huIEhzdSAo6Kix5rC457+wKSA8Sm9obi5Ic3VAbWVkaWF0 ZWsuY29tPiBbMjMwNzEyIDIzOjI2XToNCj4gPiBPbiBNb24sIDIwMjMtMDctMTAgYXQgMTA6MjQg LTA0MDAsIExpYW0gUi4gSG93bGV0dCB3cm90ZToNCj4gDQo+IC4uLg0KPiANCj4gPiA+ID4gPiA+ ID4gPiBBcyB5b3UgbWVudGlvbmVkLCBtYXNfcHJlYWxsb2NhdGUoKSBzaG91bGQgYWxsb2NhdGUN Cj4gZW5vdWdoDQo+ID4gPiA+ID4gbm9kZSwNCj4gPiA+ID4gPiA+ID4gYnV0IHRoZXJlIGlzIHN1 Y2ggZnVuY3Rpb25zIG1hc19ub2RlX2NvdW50KCkgaW4NCj4gPiA+ID4gPiBtYXNfc3RvcmVfcHJl YWxsb2MoKS4NCj4gPiA+ID4gPiA+ID4gPiBJbiBtYXNfbm9kZV9jb3VudCgpIGNoZWNrcyB3aGV0 aGVyIHRoZSAqbWFzKiBoYXMgZW5vdWdoDQo+ID4gPiBub2RlcywNCj4gPiA+ID4gPiBhbmQNCj4g PiA+ID4gPiA+ID4gYWxsb2NhdGUgbWVtb3J5IGZvciBub2RlIGlmIHRoZXJlIHdhcyBubyBlbm91 Z2ggbm9kZXMgaW4NCj4gbWFzLg0KPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gUmlnaHQs IHdlIGNhbGwgbWFzX25vZGVfY291bnQoKSBzbyB0aGF0IGJvdGggY29kZSBwYXRocw0KPiBhcmUN Cj4gPiA+IHVzZWQNCj4gPiA+ID4gPiBmb3INCj4gPiA+ID4gPiA+ID4gcHJlYWxsb2NhdGlvbnMg YW5kIHJlZ3VsYXINCj4gbWFzX3N0b3JlKCkvbWFzX3N0b3JlX2dmcCgpLiAgSXQNCj4gPiA+ID4g PiBzaG91bGRuJ3QNCj4gPiA+ID4gPiA+ID4gdGFrZSBhIHNpZ25pZmljYW50IGFtb3VudCBvZiB0 aW1lIHRvIHZlcmlmeSB0aGVyZSBpcw0KPiBlbm91Z2gNCj4gPiA+ID4gPiBub2Rlcy4NCj4gPiA+ ID4gPiA+IA0KPiA+ID4gPiA+ID4gWWFwLi4uLCBpdCBkaWRuJ3QgdGFrZSBhIHNpZ25pZmljYW50 IGFtb3VudCBvZiB0aW1lIHRvDQo+IHZlcmlmeQ0KPiA+ID4gPiA+IHdoZXRoZXINCj4gPiA+ID4g PiA+IHRoZXJlIGlzIGVub3VnaCBub2Rlcy4gVGhlIHByb2JsZW0gaXMgd2h5IHRoZSBmbG93IGlu DQo+ID4gPiA+ID4gbWFzX25vZGVfY291bnQNCj4gPiA+ID4gPiA+IHdpbGwgYWxsb2Mgbm9kZXMg aWYgdGhlcmUgd2FzIG5vIGVub3VnaCBub2RlcyBpbiBtYXM/DQo+ID4gPiA+ID4gDQo+ID4gPiA+ ID4gV2hhdCBJIG1lYW50IGlzIHRoYXQgYm90aCBtZXRob2RzIHVzZSB0aGUgc2FtZSBjYWxsIHBh dGgNCj4gYmVjYXVzZQ0KPiA+ID4gPiA+IHRoZXJlDQo+ID4gPiA+ID4gaXMgbm90IGEgcmVhc29u IHRvIGR1cGxpY2F0ZSB0aGUgcGF0aC4gIEFmdGVyDQo+IG1hc19wcmVhbGxvY2F0ZSgpDQo+ID4g PiBoYXMNCj4gPiA+ID4gPiBhbGxvY2F0ZWQgdGhlIG5vZGVzIG5lZWRlZCwgdGhlIGNhbGwgdG8g Y2hlY2sgaWYgdGhlcmUgaXMNCj4gZW5vdWdoDQo+ID4gPiA+ID4gbm9kZXMNCj4gPiA+ID4gPiB3 aWxsIGJlIHF1aWNrLg0KPiA+ID4gPiANCj4gPiA+ID4gU28gd2hldGhlciB0aGUgcHVycG9zZSBv ZiBtYXNfcHJlYWxsb2NhdGUoKSBpcyBkZWNyZWFzaW5nIHRoZQ0KPiBsb2NrDQo+ID4gPiA+IHJl dGVudGlvbiB0aW1lPw0KPiA+ID4gDQo+ID4gPiBJdCBjb3VsZCBiZSwgYnV0IGluIHRoaXMgY2Fz ZSBpdCdzIHRoZSBsb2NraW5nIG9yZGVyLiAgV2UgaGF2ZSB0bw0KPiA+ID4gcHJlLWFsbG9jYXRl IGFuZCBmYWlsIGVhcmx5IGlmIHdlIGFyZSBvdXQgb2YgbWVtb3J5LCBiZWNhdXNlIHdlDQo+ID4g PiBfY2Fubm90Xw0KPiA+ID4gdXNlIEdGUF9LRVJORUwgd2hlcmUgd2UgY2FsbA0KPiBtYXNfc3Rv cmVfcHJlYWxsb2MoKS4gIG1hc19wcmVhbGxvY2F0ZSgpDQo+ID4gPiB3aWxsIHVzZSBHRlBfS0VS RU5MIHRob3VnaC4gIFdlIGNhbm5vdCB1c2UgR0ZQX0tFUk5FTCBkdXJpbmcgdGhlDQo+ID4gPiBz dG9yZQ0KPiA+ID4gYmVjYXVzZSByZWNsYWltIG1heSBzbGVlcCBhbmQgd2UgY2Fubm90IHNsZWVw IGhvbGRpbmcgdGhlIGxvY2tzDQo+IHdlDQo+ID4gPiBuZWVkDQo+ID4gPiB0byBob2xkIGF0IHRo ZSB0aW1lIG9mIHRoZSBzdG9yZSBvcGVyYXRpb24gaW4gX192bWFfYWRqdXN0KCkuDQo+ID4gPiAN Cj4gPiBZYXAsIGlmIHRoZSB0eXBlIG9mIGxvY2sgaXMgc3BpbmxvY2ssIHRoZSBmbG93IHNob3Vs ZG4ndCBzbGVlcCBpbg0KPiB0aGUNCj4gPiBjcml0aWNhbCBzZWN0aW9ucy4gbW1hcF9sb2NrIGlz IGltcGxtZW50ZWQgYnkgcndfc2VtYXBob3JlKG11dGV4KS4NCj4gSXMNCj4gPiB0aGVyZSBhbnkg b3RoZXIgbG9jayBpbiB0aGlzIHNlY3Rpb24/DQo+IA0KPiBZZXMsIHRoZSBpX21tYXBfbG9ja193 cml0ZSgpLCB0aGUgYW5vbl92bWFfbG9ja193cml0ZSgpLA0KPiBmbHVzaF9kY2FjaGVfbW1hcF9s b2NrKCkuDQo+IA0KPiA+ID4gPiANCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+IEkgdGhp bmsgdGhhdCBpZiBtYXNfcHJlYWxsb2NhdGUoKSBhbGxvY2F0ZSBlbm91Z2ggbm9kZSwNCj4gd2h5 DQo+ID4gPiB3ZQ0KPiA+ID4gPiA+ID4gPiBjaGVjayB0aGUgbm9kZSBjb3VudCBhbmQgYWxsb2Nh dGUgbm9kZXMgaWYgdGhlcmUgd2FzIG5vDQo+ID4gPiBlbm91Z2gNCj4gPiA+ID4gPiBub2Rlcw0K PiA+ID4gPiA+ID4gPiBpbiBtYXMgaW4gbWFzX25vZGVfY291bnQoKT8NCj4gPiA+ID4gPiA+ID4g DQo+ID4gPiA+ID4gPiA+IFdlIGNoZWNrIGZvciB0aGUgYWJvdmUgcmVhc29uLg0KPiA+ID4gPiA+ ID4gPiANCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gT0suLi4sIHRoaXMgaXMgb25lIG9mIHRo ZSByb290IGNhdXNlIG9mIHRoaXMgQlVHLg0KPiA+ID4gPiA+IA0KPiA+ID4gPiA+IFRoZSByb290 IGNhdXNlIGlzIHRoYXQgdGhlcmUgd2FzIG5vdCBlbm91Z2ggbWVtb3J5IGZvciBhDQo+IHN0b3Jl DQo+ID4gPiA+ID4gb3BlcmF0aW9uLiAgUmVnYXJkbGVzcyBvZiBpZiB3ZSBjaGVjayB0aGUgYWxs b2NhdGlvbnMgaW4gdGhlDQo+ID4gPiA+ID4gbWFzX3N0b3JlX3ByZWFsbG9jKCkgcGF0aCBvciBu b3QsIHRoaXMgd291bGQgZmFpbC4gIElmIHdlDQo+IHJlbW92ZQ0KPiA+ID4gdGhlDQo+ID4gPiA+ ID4gY2hlY2sgZm9yIG5vZGVzIHdpdGhpbiB0aGlzIHBhdGgsIHRoZW4gd2Ugd291bGQgaGF2ZSB0 bw0KPiBCVUdfT04oKQ0KPiA+ID4gd2hlbg0KPiA+ID4gPiA+IHdlDQo+ID4gPiA+ID4gcnVuIG91 dCBvZiBub2RlcyB0byB1c2Ugb3IgaGF2ZSBhIG51bGwgcG9pbnRlciBkZXJlZmVyZW5jZQ0KPiBC VUcNCj4gPiA+ID4gPiBhbnl3YXlzLg0KPiA+ID4gPiA+IA0KPiA+ID4gPiBZYXAsIHRoZSByb290 IGNhdXNlIGlzIG9vbS4gVGhlIEJVR19PTigpIGZvciB0aGUgc2l0dWF0aW9ucw0KPiB0aGF0DQo+ ID4gPiB0aGUNCj4gPiA+ID4gbWFwbGUgdHJlZSBzdHJ1Y3QgY2Fubm90IGJlIG1haW50YWluZWQg YmVjYXVzZSBvZiB0aGUgbGFjayBvZg0KPiA+ID4gbWVtb3J5IGlzDQo+ID4gPiA+IG5lY2Vzc2Fy eS4gQnV0IHRoZSB0aGUgYnVkZHkgc3lzdGVtIGluIGxpbnV4IGtlcm5lbCBjYW4gcmVjbGFpbQ0K PiA+ID4gbWVtb3J5DQo+ID4gPiA+IHdoZW4gdGhlIHN5c3RlbSBpcyB1bmRlciB0aGUgbG93IG1l bW9yeSBzdGF0dXMuIElmIHdlIHVzZQ0KPiA+ID4gR0ZQX0tFUk5FTA0KPiA+ID4gPiBhZnRlciB0 cnlpbmcgR0ZQX05PV0FJVCB0byBhbGxvY2F0ZSBub2RlLCBtYXliZSB3ZSBjYW4gZ2V0DQo+IGVu b3VnaA0KPiA+ID4gPiBtZW1vcnkgd2hlbiB0aGUgc2Vjb25kIHRyeSB3aXRoIEdGUF9LRVJORUwu IA0KPiA+ID4gDQo+ID4gPiBSaWdodCwgYnV0IHRoZSBHRlBfS0VSTkVMIGNhbm5vdCBiZSB1c2Vk IHdoZW4gaG9sZGluZyBjZXJ0YWluDQo+IGxvY2tzDQo+ID4gPiBiZWNhdXNlIGl0IG1heSBzbGVl cC4NCj4gPiA+IA0KPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ ID4gV2UgaGF2ZSBzZWVuIHRoYXQgdGhlcmUgbWF5IGJlIHNvbWUgbWFwbGVfdHJlZQ0KPiBvcGVy YXRpb25zDQo+ID4gPiBpbg0KPiA+ID4gPiA+ID4gPiBtZXJnZV92bWEuLi4NCj4gPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiA+IElmIG1lcmdlX3ZtYSgpIGRvZXMgYW55dGhpbmcsIHRoZW4gdGhl cmUgd2FzIGFuIG9wZXJhdGlvbg0KPiB0bw0KPiA+ID4gdGhlDQo+ID4gPiA+ID4gPiA+IG1hcGxl DQo+ID4gPiA+ID4gPiA+IHRyZWUuDQo+ID4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gPiA+IA0K PiA+ID4gPiA+ID4gPiA+IE1vcmVvdmVyLCB3b3VsZCBtYXBsZV90cmVlIHByb3ZpZGVzIGFuIEFQ SSBmb3INCj4gYXNzaWduaW5nDQo+ID4gPiB1c2VyJ3MNCj4gPiA+ID4gPiBnZnANCj4gPiA+ID4g PiA+ID4gZmxhZyBmb3IgYWxsb2NhdGluZyBub2RlPw0KPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4g PiA+ID4gbWFzX3ByZWFsbG9jYXRlKCkgYW5kIG1hc19zdG9yZV9nZnAoKSBoYXMgZ2ZwIGZsYWdz IGFzIGFuDQo+ID4gPiA+ID4gPiA+IGFyZ3VtZW50LiAgSW4NCj4gPiA+ID4gPiA+ID4geW91ciBj YWxsIHN0YWNrLCBpdCB3aWxsIGJlIGNhbGxlZCBpbiBfX3ZtYV9hZGp1c3QoKSBhcw0KPiBzdWNo Og0KPiA+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+ID4gaWYgKG1hc19wcmVhbGxvY2F0ZSgmbWFz LCB2bWEsIEdGUF9LRVJORUwpKQ0KPiA+ID4gPiA+ID4gPiByZXR1cm4gLUVOT01FTTsNCj4gPiA+ ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+IGxpbmUgNzE1IGluIHY2LjEuMjUNCj4gPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiA+ID4gSW4gcmJfdHJlZSwgd2UgYWxsb2NhdGUgdm1hX2FyZWFfc3Ry dWN0IChyYl9ub2RlIGlzIGluDQo+IHRoaXMNCj4gPiA+ID4gPiA+ID4gc3RydWN0Likgd2l0aCBH RlBfS0VSTkVMLCBhbmQgbWFwbGVfdHJlZSBhbGxvY2F0ZSBub2RlDQo+IHdpdGgNCj4gPiA+ID4g PiA+ID4gR0ZQX05PV0FJVCBhbmQgX19HRlBfTk9XQVJOLg0KPiA+ID4gPiA+ID4gPiANCj4gPiA+ ID4gPiA+ID4gV2UgdXNlIEdGUF9LRVJORUwgYXMgSSBleHBsYWluZWQgYWJvdmUgZm9yIHRoZSBW TUEgdHJlZS4NCj4gPiA+ID4gPiA+IA0KPiA+ID4gPiA+ID4gR290IGl0ISBCdXQgdGhlIG1hc19u b2RlX2NvdW50KCkgYWx3YXlzIHVzZSBHRlBfTk9XQUlUIGFuZA0KPiA+ID4gPiA+IF9fR0ZQX05P V0FSTg0KPiA+ID4gPiA+ID4gaW4gaW5zZXJ0aW5nIHRyZWUgZmxvdy4gRG8geW91IGNvbnNpZGVy IHRoZSBwZXJmb3JtYW5jZSBvZg0KPiA+ID4gPiA+IG1haW50YWluaW5nDQo+ID4gPiA+ID4gPiB0 aGUgc3RydWN0dXJlIG9mIG1hcGxlX3RyZWU/DQo+ID4gPiA+ID4gDQo+ID4gPiA+ID4gU29ycnks IEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHlvdSBtZWFuIGJ5ICdjb25zaWRlciB0aGUNCj4gPiA+ IHBlcmZvcm1hbmNlDQo+ID4gPiA+ID4gb2YNCj4gPiA+ID4gPiBtYWludGFpbmluZyB0aGUgc3Ry dWN0dXJlIG9mIG1hcGxlX3RyZWUnLg0KPiA+ID4gPiA+IA0KPiA+ID4gPiBBcyBJIG1lbnRpb25l ZCBhYm92ZSwgR0ZQX05PV0FJVCB3aWxsIG5vdCBhbGxvdyBidWRkeSBzeXN0ZW0NCj4gZm9yDQo+ ID4gPiA+IHJlY2xhaW1pbmcgbWVtb3J5LCBzbyAiRG8geW91IGNvbnNpZGVyIHRoZSBwZXJmb3Jt YW5jZSBvZg0KPiA+ID4gbWFpbnRhaW5pbmcNCj4gPiA+ID4gdGhlIHN0cnVjdHVyZSBvZiBtYXBs ZV90cmVlIiBtZWFucyB0aGF0OiB3aGV0aGVyIHRoZQ0KPiA+ID4gbWFzX25vZGVfY291bnQoKQ0K PiA+ID4gPiBwYXRoIGlzIG5vdCBhbGxvd2VkIHRvIHJlY2xhaW0gb3IgY29tcGFjdCBtZW1vcnkg Zm9yIHRoZQ0KPiA+ID4gcGVyZm9ybWFuY2UuDQo+ID4gPiANCj4gPiA+IEFoLCBuby4gIFRoaXMg aXMgbm90IGZvciBwZXJmb3JtYW5jZS4gIEl0IHdhcyBpbml0aWFsbHkgb24gdGhlDQo+IHJvYWQN Cj4gPiA+IG1hcA0KPiA+ID4gZm9yIHBlcmZvcm1hbmNlLCBidXQgaXQgd2FzIG5lZWRlZCBmb3Ig dGhlIGNvbXBsaWNhdGVkIGxvY2tpbmcgaW4NCj4gdGhlDQo+ID4gPiBNTQ0KPiA+ID4gY29kZS4N Cj4gPiA+IA0KPiA+ID4gcmIgdHJlZSBlbWJlZGRlZCB0aGUgbm9kZXMgaW4gdGhlIFZNQSB3aGlj aCBpcyBhbGxvY2F0ZWQgb3V0c2lkZQ0KPiB0aGlzDQo+ID4gPiBjcml0aWNhbCBzZWN0aW9uIGFu ZCBzbyBpdCBjb3VsZCB1c2UgR0ZQX0tFUk5FTC4NCj4gPiA+IA0KPiA+IEFzIEkga25vdywgZm9s bG93aW5nIGlzIHJiX3RyZWUgZmxvdyBpbiA1LjE1LjE4NjoNCj4gPiANCj4gPiAuLi4NCj4gPiBt bWFwX3dyaXRlX2xvY2tfa2lsbGFibGUobW0pDQo+ID4gLi4uDQo+ID4gZG9fbW1hcCgpDQo+ID4g Li4uDQo+ID4gbW1hcF9yZWdpb24oKQ0KPiA+IC4uLg0KPiA+IHZtX2FyZWFfYWxsb2MobW0pDQo+ ID4gLi4uDQo+ID4gbW1hcF93cml0ZV91bmxvY2sobW0pDQo+ID4gDQo+ID4gdm1fYXJlYV9hbGxv YyBpcyBpbiB0aGUgbW1hcF9sb2NrIGhvZGluZyBwZXJpb2QuDQo+ID4gSXQgc2VlbXMgdGhhdCB0 aGUgZmxvdyB3b3VsZCBzbGVlcCBoZXJlIGluIHJiX3RyZWUgZmxvdy4NCj4gPiBJZiBJIG1pc3Mg YW55dGhpbmcsIHBsZWFzZSB0ZWxsIG1lLCB0aGFua3MhDQo+IA0KPiBCZWZvcmUgdGhlIG1tYXBf d3JpdGVfdW5sb2NrKG1tKSBpbiB0aGUgYWJvdmUgc2VxdWVuY2UsICB0aGUNCj4gaV9tbWFwX2xv Y2tfd3JpdGUoKSwgYW5vbl92bWFfbG9ja193cml0ZSgpLCBhbmQvb3IgdGhlDQo+IGZsdXNoX2Rj YWNoZV9tbWFwX2xvY2soKSBtYXkgYmUgdGFrZW4uICBDaGVjayBfX3ZtYV9hZGp1c3QoKS4NCj4g DQo+IFRoZSBpbnNlcnRpb24gaW50byB0aGUgdHJlZSBuZWVkcyB0byBob2xkIHNvbWUgc3Vic2V0 IG9mIHRoZXNlIGxvY2tzLg0KPiBUaGUgcmItdHJlZSBpbnNlcnQgZGlkIG5vdCBhbGxvY2F0ZSB3 aXRoaW4gdGhlc2UgbG9ja3MsIGJ1dCB0aGUgbWFwbGUNCj4gdHJlZSB3b3VsZCBuZWVkIHRvIGFs bG9jYXRlIHdpdGhpbiB0aGVzZSBsb2NrcyB0byBpbnNlcnQgaW50byB0aGUNCj4gdHJlZS4NCj4g VGhpcyBpcyB3aHkgdGhlIHByZWFsbG9jYXRpb24gZXhpc3RzIGFuZCB3aHkgaXQgaXMgbmVjZXNz YXJ5Lg0KPiANCg0KWWFwLCBwcmVhbGxvY2F0aW9uIGlzIG5lY2Vzc2FyeS4gYW5vbl92bWFfbG9j a193cml0ZSgpIGFuZA0KZmx1c2hfZGNhY2hlX21tYXBfbG9jaygpIGhvbGQgdGhlIGxvY2sgYW5k IG1hbmlwdWxhdGUgcmJfdHJlZS4gSSB0aGluaw0KdGhhdCB0aGVyZSBpcyBubyBtYXBsZSB0cmVl IG1hbmlwdWxhdGlvbnMgZHVyaW5nIHRoZSBsb2NrIGhvbGRpbmcNCnBlcmlvZC4gSXMgdGhlcmUg YW55IGZ1dHVyZSB3b3JrIGluIHRoaXMgc2VjdGlvbj8NCg0KPiA+IA0KPiA+IA0KPiA+ID4gPiA+ ID4gDQo+ID4gPiA+ID4gPiA+IEl0IGFsc28gd2lsbCBkcm9wIHRoZSBsb2NrIGFuZCByZXRyeSB3 aXRoIEdGUF9LRVJORUwgb24NCj4gPiA+IGZhaWx1cmUNCj4gPiA+ID4gPiA+ID4gd2hlbiBub3Qg dXNpbmcgdGhlIGV4dGVybmFsIGxvY2suICBUaGUgbW1hcF9sb2NrIGlzDQo+ID4gPiBjb25maWd1 cmVkIGFzDQo+ID4gPiA+ID4gYW4NCj4gPiA+ID4gPiA+ID4gZXh0ZXJuYWwgbG9jay4NCj4gPiA+ ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiA+ID4gQWxsb2NhdGlvbiB3aWxsIG5vdCB3YWl0IGZvciBy ZWNsYWltaW5nIGFuZCBjb21wYWN0aW5nDQo+IHdoZW4NCj4gPiA+ID4gPiB0aGVyZQ0KPiA+ID4g PiA+ID4gPiBpcyBubyBlbm91Z2ggYXZhaWxhYmxlIG1lbW9yeS4NCj4gPiA+ID4gPiA+ID4gPiBJ cyB0aGVyZSBhbnkgY29uY2VybiBmb3IgdGhpcyBkZXNpZ24/DQo+ID4gPiA+ID4gPiA+IA0KPiA+ ID4gPiA+ID4gPiBUaGlzIGhhcyBiZWVuIGFkZHJlc3NlZCBhYm92ZSwgYnV0IGxldCBtZSBrbm93 IGlmIEkNCj4gbWlzc2VkDQo+ID4gPiA+ID4gYW55dGhpbmcNCj4gPiA+ID4gPiA+ID4gaGVyZS4N Cj4gPiA+ID4gPiA+ID4gDQo+ID4gPiA+ID4gPiANCj4gPiA+ID4gPiA+IEkgdGhpbmsgdGhhdCB0 aGUgbWFzX25vZGVfY291bnQoKSBoYXMgaGlnaGVyIHJhdGUgb2YNCj4gdHJpZ2dlcmluZw0KPiA+ ID4gPiA+ID4gQlVHX09OKCkgd2hlbiBhbGxvY2F0aW5nIG5vZGVzIHdpdGggR0ZQX05PV0FJVCBh bmQNCj4gPiA+IF9fR0ZQX05PV0FSTi4gSWYNCj4gPiA+ID4gPiA+IG1hc19ub2RlX2NvdW50KCkg dXNlIEdGUF9LRVJORUwgYXMgbWFzX3ByZWFsbG9jYXRlKCkgaW4gdGhlDQo+ID4gPiBtbWFwLmMs DQo+ID4gPiA+ID4gdGhlDQo+ID4gPiA+ID4gPiBhbGxvY2F0aW9uIGZhaWwgcmF0ZSBtYXkgYmUg bG93ZXIgdGhhbiB1c2UgR0ZQX05PV0FJVC4NCj4gPiA+ID4gPiANCj4gPiA+ID4gPiBXaGljaCBC VUdfT04oKSBhcmUgeW91IHJlZmVycmluZyB0bz8NCj4gPiA+ID4gPiANCj4gPiA+ID4gPiBJZiBJ IHdhcyB0byBzZXBhcmF0ZSB0aGUgY29kZSBwYXRoIGZvciBtYXNfc3RvcmVfcHJlYWxsb2MoKQ0K PiBhbmQNCj4gPiA+ID4gPiBtYXNfc3RvcmVfZ2ZwKCksIHRoZW4gYSBCVUdfT04oKSB3b3VsZCBz dGlsbCBuZWVkIHRvIGV4aXN0DQo+IGFuZA0KPiA+ID4gc3RpbGwNCj4gPiA+ID4gPiB3b3VsZCBo YXZlIGJlZW4gdHJpZ2dlcmVkLi4gIFdlIGFyZSBpbiBhIHBsYWNlIGluIHRoZSBjb2RlDQo+IHdo ZXJlDQo+ID4gPiB3ZQ0KPiA+ID4gPiA+IHNob3VsZCBuZXZlciBzbGVlcCBhbmQgd2UgZG9uJ3Qg aGF2ZSBlbm91Z2ggbWVtb3J5IGFsbG9jYXRlZA0KPiB0bw0KPiA+ID4gZG8NCj4gPiA+ID4gPiB3 aGF0DQo+ID4gPiA+ID4gd2FzIG5lY2Vzc2FyeS4NCj4gPiA+ID4gPiANCj4gPiA+ID4gWWFwLiBU aGVyZSBpcyBubyByZWFzb24gdG8gc2VwcmF0ZSBtYXNfc3RvcmVfcHJlYWxsb2MoKSBhbmQNCj4g PiA+ID4gbWFzX3N0b3JlX2dmcC4gSXMgaXQgcG9zc2libGUgdG8gcmV0cnkgdG8gYWxsb2NhdGUg bWFzX25vZGUNCj4gd2l0aA0KPiA+ID4gPiBHRlBfS0VSTkVMICh3YWl0IGZvciBzeXN0ZW0gcmVj bGFpbSBhbmQgY29tcGFjdCkgaW5zdGVhZCBvZg0KPiA+ID4gdHJpZ2dlcmluZw0KPiA+ID4gPiBC VUdfT04gb25jZSB0aGUgR0ZQX05PV0FJVCBhbGxvY2F0aW9uIGZhaWxlZD8NCj4gPiA+IA0KPiA+ ID4gVW5mb3J0dW5hdGVseSBub3QsIG5vLiAgSW4gc29tZSBjYXNlcyBpdCBtYXkgYWN0dWFsbHkg d29yayBvdXQNCj4gdGhhdA0KPiA+ID4gdGhlDQo+ID4gPiBWTUEgbWF5IG5vdCBuZWVkIHRoZSBs b2NrcyBpbiBxdWVzdGlvbiwgYnV0IGl0IGNhbm5vdCBiZQ0KPiBnZW5lcmFsaXplZA0KPiA+ID4g Zm9yDQo+ID4gPiBfX3ZtYV9hZGp1c3QoKS4gIFdoZXJlIEkgYW0gYWJsZSwgSSB1c2UgdGhlIG1h c19zdG9yZV9nZnAoKSBjYWxscw0KPiBzbw0KPiA+ID4gd2UNCj4gPiA+IGNhbiBsZXQgcmVjbGFp bSBhbmQgY29tcGFjdCBydW4sIGJ1dCBpdCdzIG5vdCBwb3NzaWJsZSBoZXJlLg0KPiA+ID4gDQo+ ID4gV2UgaGF2ZSB1c2VkIEdGUF9LRVJORUwgYXMgYWxsb2MgZmxhZyBpbiBtYXNfbm9kZV9jb3Vu dCBmbG93IGFib3V0DQo+IDINCj4gPiBtb250aHMuIFRoZSBtZW50aW9uZWQgcHJvYmxlbSB3ZSBt ZW50aW9uZWQgaW4gdGhlIGZpcnN0IG1haWwgZGlkbid0DQo+ID4gcmVwcm9kdWNlIHVuZGVyIGhp Z2ggc3RyZXNzIHN0YWJpbGl0eSB0ZXN0Lg0KPiA+IA0KPiA+IEkgaGF2ZSBzZWVuIHRoZSBwYXRj aCBwcm92aWRlZCBieSB5b3UuIEkgd2lsbCB2ZXJpZnkgdGhpcyBwYXRjaCBpbg0KPiBvdXINCj4g PiBzdGFiaWxpdHkgdGVzdC4gQnV0IHRoZXJlIGlzIGEgcHJvYmxlbSwgaWYgbWFwbGVfdHJlZSBi ZWhhdmlvciBpcw0KPiA+IHVuZXhwZWN0ZWQgKGUuZy4gcmVkdW5kYW50IHdyaXRlIGJ1ZyB0aGlz IHRpbWUpLiBXZSBjYW4gb25seSByZXZpZXcNCj4gdGhlDQo+ID4gd2hvbGUgbW0gZmxvdyB0byBm aW5kIG91dCB0aGUgd3JvbmcgYmVoYXZpb3IuIERvIHdlIGhhdmUgYW4NCj4gZWZmaWNpZW50DQo+ ID4gZGVidWcgbWV0aG9kIGZvciBtYXBsZSB0cmVlPw0KPiANCj4gVGhlcmUgaXMgYSB0ZXN0IHN1 aXRlIGZvciB0aGUgbWFwbGUgdHJlZSBmb3VuZCBpbg0KPiB0b29scy90ZXN0aW5nL3JhZGl4LXRy ZWUsIGJ1dCBpdCBkb2VzIG5vdCB0ZXN0IHRoZSBtbSBjb2RlIGFuZA0KPiBpbnRlZ3JhdGlvbi4N Cj4gDQo+IFRoZXJlIGFyZSBvdGhlciBtbSB0ZXN0cywgYnV0IHRoZXkgd2lsbCBub3QgdGVzdCB0 aGUgT09NIHNjZW5hcmlvIHlvdQ0KPiBoaXQgLSB0byB0aGUgYmVzdCBvZiBteSBrbm93bGVkZ2Uu DQo+IA0KPiBUaGVyZSBhcmUgYWxzbyBjb25maWcgb3B0aW9ucyB0byBkZWJ1ZyB0aGUgdHJlZSBv cGVyYXRpb25zLCBidXQgdGhleQ0KPiBkbw0KPiBub3QgZGV0ZWN0IHRoZSByZWR1bmRhbnQgd3Jp dGUgaXNzdWVzLiAgUGVyaGFwcyBJIGNhbiBsb29rIGF0IGFkZGluZw0KPiBzdXBwb3J0IGZvciBk ZXRlY3RpbmcgcmVkdW5kYW50IHdyaXRlcywgIGJ1dCB0aGF0IHdpbGwgbm90IGJlDQo+IGJhY2tw b3J0ZWQNCj4gdG8gYSBzdGFibGUga2VybmVsLg0KPiANCg0KVGhlIHN1ZmZpY2llbnQgdGVzdCBj YXNlcyBvZiBtYXBsZSB0cmVlIGVuc3VyZSB0aGUgZnVuY3Rpb24gd29yayB3ZWxsLg0KQnV0IHRo ZSByZWR1bmRhbnQgb3BlcmF0aW9ucyAoYWxsb2Mgbm9kZSwgZnJlZSBub2RlLCB0cmVlDQptYW5p cHVsYXRpb25zKSBvZiBtYXBsZV90cmVlIGFyZSBub3QgZWFzeSB0byBkZXRlY3QgKGUuZy4gdGhl IGNhc2UNCnJlcG9ydGVkIHRoaXMgdGltZSBhbmQgbWFzX3ByZWFsbG9jYXRlKCkgYWxsb2NhdGVz IHJlZHVuZGFudCBub2RlcyB3aXRoDQp0aGUgd29yc3QgY2FzZSkuDQoNClRoZSBkZXRlY3Rpbmcg cmVkdW5kYW50IHdyaXRlcyBtZWNoYW5pc20gbWF5IGhlbHAgdGhlIGRldmVsb3BlcnMgdG8NCmZp bmQgb3V0IHRoZSBwcm9ibGVtcyBlYXNpZXIuIEhvcGUgaXQgY2FuIGJlIGVzdGFibGlzZWQgc3Vj Y2Vzc2Z1bGx5ISENCj4gVGhhbmtzLA0KPiBMaWFtDQoNCkJlc3QgUmVnYXJkcywNCkpvaG4gSHN1 DQo=