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 X-Spam-Level: X-Spam-Status: No, score=-6.5 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,INCLUDES_PATCH,MAILING_LIST_MULTI, MIME_HTML_ONLY,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2DB60C33CAF for ; Fri, 17 Jan 2020 02:16:55 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id A1A9C20748 for ; Fri, 17 Jan 2020 02:16:54 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=aliyun.com header.i=@aliyun.com header.b="gImucfLz" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A1A9C20748 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=aliyun.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 051706B0302; Thu, 16 Jan 2020 21:16:54 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 001046B0303; Thu, 16 Jan 2020 21:16:53 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E82856B0304; Thu, 16 Jan 2020 21:16:53 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0160.hostedemail.com [216.40.44.160]) by kanga.kvack.org (Postfix) with ESMTP id CCA716B0302 for ; Thu, 16 Jan 2020 21:16:53 -0500 (EST) Received: from smtpin12.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with SMTP id 64CDF499607 for ; Fri, 17 Jan 2020 02:16:53 +0000 (UTC) X-FDA: 76385513106.12.iron03_3befcb5016116 X-HE-Tag: iron03_3befcb5016116 X-Filterd-Recvd-Size: 16499 Received: from out30-41.freemail.mail.aliyun.com (out30-41.freemail.mail.aliyun.com [115.124.30.41]) by imf20.hostedemail.com (Postfix) with ESMTP for ; Fri, 17 Jan 2020 02:16:51 +0000 (UTC) DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=aliyun.com; s=s1024; t=1579227408; h=Date:From:To:Message-ID:Subject:MIME-Version:Content-Type; bh=+7KI9hK/un2ioUvg6RpYlb14Y/3wf4zWeh777NLdFtk=; b=gImucfLzDu0KmBbEzUZoQju31QePA7yutH5OTqlSDgQYI670rSMUiXjBy0Fgs6SeSQpOZASYwdCmBFEm9C32QB+D8HvrHIosVJ2GyFBmX4onhO9/MaVIk55n4UricvH/EgNop2uvMhbV897gjEt9YD/t/koln9vDQV7xYvvDTHA= X-Alimail-AntiSpam:AC=CONTINUE;BC=0.07501754|-1;CH=green;DM=CONTINUE|CONTINUE|true|0.432536-0.0185699-0.548894;DS=CONTINUE|ham_enroll_verification|0.147779-0.023965-0.828256;FP=0|0|0|0|0|-1|-1|-1;HT=e01e07417;MF=buddy.zhang@aliyun.com;NM=1;PH=DS;RN=4;RT=4;SR=0;TI=SMTPD_---0TnwHqS5_1579227406; Received: from DESKTOP-SOND0CC(mailfrom:buddy.zhang@aliyun.com fp:SMTPD_---0TnwHqS5_1579227406) by smtp.aliyun-inc.com(127.0.0.1); Fri, 17 Jan 2020 10:16:47 +0800 Date: Fri, 17 Jan 2020 10:16:46 +0800 From: buddy.zhang To: =?utf-8?Q?mhocko=40kernel.org?= Cc: =?utf-8?Q?akpm=40linux-foundation.org?= , =?utf-8?Q?linux-mm=40kvack.org?= , =?utf-8?Q?linux-kernel=40vger.kernel.org?= Message-ID: <6EE060CC-A19D-4F9D-BE36-14CB20C44AE2@aliyun.com> In-Reply-To: <20200116121240.GS19428@dhcp22.suse.cz> References: <20200116101322.17795-1-buddy.zhang@aliyun.com> <20200116121240.GS19428@dhcp22.suse.cz> Subject: Re: [PATCH] mm/cma.c: find a named CMA area by name X-Mailer: MailMasterPC/4.10.2.1001 (Windows 10 RS5) X-CUSTOM-MAIL-MASTER-SENT-ID: A14727C8-41CC-4563-9EFD-160B3199DCB1 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 X-Bogosity: Ham, tests=bogofilter, spamicity=0.006908, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: PGh0bWw+DQo8aGVhZD4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSdDb250ZW50LVR5cGUnIGNvbnRl bnQ9J3RleHQvaHRtbDsgY2hhcnNldD1VVEYtOCc+DQo8L2hlYWQ+DQo8Ym9keT4NCjxzdHlsZT4N CiAgICBmb250ew0KICAgICAgICBsaW5lLWhlaWdodDogMS42Ow0KICAgIH0NCiAgICB1bCxvbHsN CiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4Ow0KICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9u OiBpbnNpZGU7DQogICAgfQ0KPC9zdHlsZT4NCjxkaXYgc3R5bGUgPSAnZm9udC1mYW1pbHk65b6u 6L2v6ZuF6buRLFZlcmRhbmEsJnF1b3Q7TWljcm9zb2Z0IFlhaGVpJnF1b3Q7LFNpbVN1bixzYW5z LXNlcmlmOyBsaW5lLWhlaWdodDoxLjY7Jz4NCiAgICA8ZGl2ID48L2Rpdj48ZGl2PgogICAgPGRp dj5IaSBNaWNoYWzvvJo8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PjxkaXYgc3R5bGU9ImNvbG9y OiByZ2IoNDksIDUzLCA1OSk7IGZvbnQtZmFtaWx5OiDlvq7ova/pm4Xpu5EsIFZlcmRhbmEsICdN aWNyb3NvZnQgWWFoZWknLCBTaW1TdW4sIHNhbnMtc2VyaWY7IGxpbmUtaGVpZ2h0OiAyMi40cHg7 Ij48ZGl2PiZuYnNwOyAmbmJzcDsgV2l0aCB0aGUgY29udGludW91cyBkZXZlbG9wbWVudCBvZiB2 aWRlbyBhbmQgQUkgdGVjaG5vbG9neSwgZGV2aWNlIHJlcXVlc3Q8L2Rpdj48ZGl2PiZuYnNwOyAm bmJzcDsgbG90cyBvZiBjb250aW51b3VzIHBoeXNpY2FsIG1lbW9yeS4gSW4gc29tZSBjYXNlcywg aW4gb3JkZXIgdG8gZW5zdXJlIGRldmljZTwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyBvYnRhaW4m bmJzcDs8c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDIyLjRweDsiPmNvbnRpbnVvdXMgcGh5c2lj YWwgbWVtb3J5IGFuZCBhbHNvIGFvdmlkIGRlYnJpcyB3aGljaCBjcmVhdGUgYnkgb3RoZXImbmJz cDs8L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDEuNjsiPiZuYnNw OyAmbmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij5k ZXZpY2UuIEJhc2VkIG9uIHRoZSBhYm92ZSBzaXR1YXRpb24sIHNvbWUgZGV2aWNlIG5lZWQgZXhj bHVzaXZlIGEgc3BlY2lhbDwvc3Bhbj48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgbmFtZWQgQ01B IGFyZWEuPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7IE9uIENNQSwgdGhl IHN5c3RlbSBzdXBwb3J0IG11bHRpcGxlIG5hbWVkIG9yIGFub255bW91cyBDTUEgYXJlYXMsIGFu ZCB3ZSBjYW4mbmJzcDs8L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2VzdGFibGlz aCBDTUEgYXJlYSB3aXRoIG5hbWUgb24gRFRTLCBhcyBmb2xsb3c6PC9kaXY+PGRpdj48YnI+PC9k aXY+PGRpdj4mbmJzcDsgJm5ic3A7IC8gezwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7IHJlc2VydmVkLW1lbW9yeSB7PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAjYWRkcmVzcy1jZWxscyA9ICZsdDsxJmd0Ozs8L2Rpdj48ZGl2 PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICNzaXplLWNlbGxzID0g Jmx0OzEmZ3Q7OzwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgcmFuZ2VzOzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgbGludXgsY21hIHs8L2Rpdj48ZGl2PiZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgY29tcGF0aWJsZSA9 ICJzaGFyZWQtZG1hLXBvb2wiOzwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyByZXVzYWJsZTs8L2Rpdj48ZGl2PiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgc2l6ZSA9ICZs dDsweDAwODAwMDAwJmd0OzsgLyogOE0gKi88L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgYWxsb2MtcmFuZ2VzID0gJmx0OzB4 NjkwMDAwMDAgMHgwMDgwMDAwMCZndDs7PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IGxpbnV4LGNtYS1kZWZhdWx0OzwvZGl2 PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTs8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IENNQTAgeyAvKiBTY2FsZXIgKi88L2Rp dj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsmbmJzcDs8c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDIyLjRweDsiPmNvbXBhdGlibGUg PSAic2hhcmVkLWRtYS1wb29sIjs8L3NwYW4+PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7PHNwYW4gc3R5bGU9Imxp bmUtaGVpZ2h0OiAyMi40cHg7Ij5yZXVzYWJsZTs8L3NwYW4+PC9kaXY+PGRpdj4mbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7PHNwYW4g c3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij5zaXplID0gJmx0OzB4MDA4MDAwMDAmZ3Q7OyAv KiA4TSAqLzwvc3Bhbj48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDs8c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDIy LjRweDsiPmFsbG9jLXJhbmdlcyA9ICZsdDsweDZBMDAwMDAwIDB4MDA4MDAwMDAmZ3Q7Ozwvc3Bh bj48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO307PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj4m bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBDTUExIHsgLyogREVDT0RF ICovPC9kaXY+PGRpdj48c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDEuNjsiPiZuYnNwOyAmbmJz cDsmbmJzcDs8L3NwYW4+PHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAxLjY7Ij4mbmJzcDsgJm5i c3A7Jm5ic3A7PC9zcGFuPjxzcGFuIHN0eWxlPSJsaW5lLWhlaWdodDogMS42OyI+Jm5ic3A7ICZu YnNwOyZuYnNwOzwvc3Bhbj48c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDEuNjsiPiZuYnNwOyAm bmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij5jb21w YXRpYmxlID0gInNoYXJlZC1kbWEtcG9vbCI7PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4gc3R5bGU9 ImxpbmUtaGVpZ2h0OiAxLjY7Ij4mbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFuPjxzcGFuIHN0eWxl PSJsaW5lLWhlaWdodDogMS42OyI+Jm5ic3A7ICZuYnNwOyZuYnNwOzwvc3Bhbj48c3BhbiBzdHls ZT0ibGluZS1oZWlnaHQ6IDEuNjsiPiZuYnNwOyAmbmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gc3R5 bGU9ImxpbmUtaGVpZ2h0OiAxLjY7Ij4mbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFuPjxzcGFuIHN0 eWxlPSJsaW5lLWhlaWdodDogMjIuNHB4OyI+cmV1c2FibGU7PC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAxLjY7Ij4mbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFuPjxz cGFuIHN0eWxlPSJsaW5lLWhlaWdodDogMS42OyI+Jm5ic3A7ICZuYnNwOyZuYnNwOzwvc3Bhbj48 c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDEuNjsiPiZuYnNwOyAmbmJzcDsmbmJzcDs8L3NwYW4+ PHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAxLjY7Ij4mbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFu PjxzcGFuIHN0eWxlPSJsaW5lLWhlaWdodDogMjIuNHB4OyI+c2l6ZSA9ICZsdDsweDAwODAwMDAw Jmd0OzsgLyogOE0gKi88L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6 IDEuNjsiPiZuYnNwOyAmbmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0 OiAxLjY7Ij4mbmJzcDsgJm5ic3A7Jm5ic3A7PC9zcGFuPjxzcGFuIHN0eWxlPSJsaW5lLWhlaWdo dDogMS42OyI+Jm5ic3A7ICZuYnNwOyZuYnNwOzwvc3Bhbj48c3BhbiBzdHlsZT0ibGluZS1oZWln aHQ6IDEuNjsiPiZuYnNwOyAmbmJzcDsmbmJzcDs8L3NwYW4+PHNwYW4gc3R5bGU9ImxpbmUtaGVp Z2h0OiAyMi40cHg7Ij5hbGxvYy1yYW5nZXMgPSAmbHQ7MHg2QjAwMDAwMCAweDAwODAwMDAwJmd0 Ozwvc3Bhbj48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO307PC9kaXY+PGRpdj48YnI+PC9kaXY+ PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBDTUFfdnBtIHs8 L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsmbmJzcDs8c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6IDIyLjRweDsiPmNvbXBhdGli bGUgPSAic2hhcmVkLWRtYS1wb29sIjs8L3NwYW4+PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7PHNwYW4gc3R5bGU9 ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij5yZXVzYWJsZTs8L3NwYW4+PC9kaXY+PGRpdj4mbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7Jm5ic3A7PHNw YW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij5zaXplID0gJmx0OzB4MDA4MDAwMDAmZ3Q7 OyAvKiA4TSAqLzwvc3Bhbj48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDs8c3BhbiBzdHlsZT0ibGluZS1oZWlnaHQ6 IDIyLjRweDsiPmFsbG9jLXJhbmdlcyA9ICZsdDsweDZDMDAwMDAwIDB4MDA4MDAwMDAmZ3Q7Ozwv c3Bhbj48L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO307PC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt9OzwvZGl2PjxkaXY+Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7fTwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyZuYnNwOzwvZGl2PjxkaXY+ PGJyPjwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyBBcyBzaG93biBhYm92ZSwgdGhlIHN5c3RlbSB3 aWxsIGVzdGFibGlzaCA0IENNQSBhcmVhLCBhbmQgYWxsIENNQSBhcmVhcyBpcyBuYW1lZCZuYnNw OzwvZGl2PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Q01BIGFyZWEuIHN1Y2ggYXMg4oCc ZGVmYXVsdCLjgIEiQ01BMCLjgIEiQ01BMSLjgIFhbmQgIkNNQV92cG0iLiBTb21lIGRldmljZTwv ZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyBtdXN0IHVzZSBvciBleGNsdXNpdmUgYSBzcGVjaWFsIENN QSBhcmVhLCBzbyBkZXZpY2Ugd2lsbCBwcm9jZXNzIGFzIGZvbGxvdzo8L2Rpdj48ZGl2Pjxicj48 L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgRGV2aWNlIEE6PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRp dj4mbmJzcDsgJm5ic3A7IHN0YXRpYyBpbnQgWEFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldik8L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgezwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7IHN0cnVjdCBjbWEgKmNtYTs8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2 PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBjbWEgPSBjbWFfZmluZF9ieV9uYW1lKCJDTUFf dnBtIik7PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgaWYgKGNtYSkgezwv ZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgcGRldi0m Z3Q7ZGV2LmNtYV9hcmVhID0gY21hOzwvZGl2PjxkaXY+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwOyAmbmJzcDsg Jm5ic3A7IC4uLi4uPC9kaXY+PGRpdj4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt9PC9kaXY+PGRp dj4mbmJzcDsgJm5ic3A7Jm5ic3A7PC9kaXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+PGRpdiBzdHls ZT0iY29sb3I6IHJnYig0OSwgNTMsIDU5KTsgZm9udC1mYW1pbHk6IOW+rui9r+mbhem7kSwgVmVy ZGFuYSwgJ01pY3Jvc29mdCBZYWhlaScsIFNpbVN1biwgc2Fucy1zZXJpZjsgbGluZS1oZWlnaHQ6 IDIyLjRweDsiPjxkaXYgc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij4mbmJzcDsgJm5ic3A7 IERldmljZSBCOjwvZGl2PjxkaXYgc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij48YnI+PC9k aXY+PGRpdiBzdHlsZT0ibGluZS1oZWlnaHQ6IDIyLjRweDsiPiZuYnNwOyAmbmJzcDsgc3RhdGlj IGludCBYQl9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KTwvZGl2PjxkaXYgc3R5 bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij4mbmJzcDsgJm5ic3A7IHs8L2Rpdj48ZGl2IHN0eWxl PSJsaW5lLWhlaWdodDogMjIuNHB4OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IHN0cnVj dCBjbWEgKmNtYTs8L2Rpdj48ZGl2IHN0eWxlPSJsaW5lLWhlaWdodDogMjIuNHB4OyI+PGJyPjwv ZGl2PjxkaXYgc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij4mbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgY21hID0gY21hX2ZpbmRfYnlfbmFtZSgiQ01BMSIpOzwvZGl2PjxkaXYgc3R5bGU9 ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij4mbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgaWYgKGNt YSkgezwvZGl2PjxkaXYgc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij4mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyBwZGV2LSZndDtkZXYuY21hX2FyZWEgPSBjbWE7 PC9kaXY+PGRpdiBzdHlsZT0ibGluZS1oZWlnaHQ6IDIyLjRweDsiPiZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO308L2Rpdj48ZGl2IHN0eWxlPSJsaW5lLWhl aWdodDogMjIuNHB4OyI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IC4uLi48L2Rpdj48ZGl2 IHN0eWxlPSJsaW5lLWhlaWdodDogMjIuNHB4OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTwv ZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiByZ2IoNDksIDUzLCA1OSk7IGZvbnQtZmFtaWx5 OiDlvq7ova/pm4Xpu5EsIFZlcmRhbmEsICdNaWNyb3NvZnQgWWFoZWknLCBTaW1TdW4sIHNhbnMt c2VyaWY7IGxpbmUtaGVpZ2h0OiAyMi40cHg7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iY29sb3I6 IHJnYig0OSwgNTMsIDU5KTsgZm9udC1mYW1pbHk6IOW+rui9r+mbhem7kSwgVmVyZGFuYSwgJ01p Y3Jvc29mdCBZYWhlaScsIFNpbVN1biwgc2Fucy1zZXJpZjsgbGluZS1oZWlnaHQ6IDIyLjRweDsi PiZuYnNwOyAmbmJzcDsgU28sIGlmIGRldmljZSB3YW50IHRvIHVzZSBhIHNwZWNpYWwgbmFtZWQg Q01BIGFyZWEgb24gbW9kdWxlLCAmbmJzcDs8L2Rpdj48ZGl2IHN0eWxlPSJjb2xvcjogcmdiKDQ5 LCA1MywgNTkpOyBmb250LWZhbWlseTog5b6u6L2v6ZuF6buRLCBWZXJkYW5hLCAnTWljcm9zb2Z0 IFlhaGVpJywgU2ltU3VuLCBzYW5zLXNlcmlmOyBsaW5lLWhlaWdodDogMjIuNHB4OyI+Jm5ic3A7 ICZuYnNwOyAiPHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij5jbWFfZmluZF9ieV9u YW1lKCk8L3NwYW4+PHNwYW4gc3R5bGU9ImxpbmUtaGVpZ2h0OiAyMi40cHg7Ij4iIG5lZWQgZXhw b3J0IHN5bWJvbHMuPC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiByZ2IoNDksIDUzLCA1 OSk7IGZvbnQtZmFtaWx5OiDlvq7ova/pm4Xpu5EsIFZlcmRhbmEsICdNaWNyb3NvZnQgWWFoZWkn LCBTaW1TdW4sIHNhbnMtc2VyaWY7IGxpbmUtaGVpZ2h0OiAyMi40cHg7Ij48YnI+PC9kaXY+PC9k aXY+CjwvZGl2PjxkaXYgY2xhc3M9IkotcmVwbHkiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNm MmYyZjI7Y29sb3I6YmxhY2s7cGFkZGluZy10b3A6NnB4O3BhZGRpbmctYm90dG9tOjZweDtib3Jk ZXItcmFkaXVzOjNweDstbW96LWJvcmRlci1yYWRpdXM6M3B4Oy13ZWJraXQtYm9yZGVyLXJhZGl1 czozcHg7bWFyZ2luLXRvcDo0NXB4O21hcmdpbi1ib3R0b206MjBweDtmb250LWZhbWlseTon5b6u 6L2v6ZuF6buRJzsiPgogICAgPGRpdiBzdHlsZT0iZm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6 MS41O3dvcmQtYnJlYWs6YnJlYWstYWxsO21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OjEw cHgiPk9uIDxzcGFuIGNsYXNzPSJtYWlsLWRhdGUiPjEvMTYvMjAyMCAyMDoxMjwvc3Bhbj7vvIw8 YSBjbGFzcz0ibWFpbC10byIgc3R5bGU9InRleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMyYTgz ZjI7IiBocmVmPSJtYWlsdG86bWhvY2tvQGtlcm5lbC5vcmciPk1pY2hhbCBIb2NrbyZsdDttaG9j a29Aa2VybmVsLm9yZyZndDs8L2E+IHdyb3Rl77yaIDwvZGl2Pgo8L2Rpdj4KPGJsb2NrcXVvdGUg aWQ9Im50ZXMtcGNtYWlsLXF1b3RlIiBzdHlsZT0ibWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBmb250 LXNpemU6IDE0cHg7IGZvbnQtZmFtaWx5OiAn5b6u6L2v6ZuF6buRJzsiPgpPbiBUaHUgMTYtMDEt MjAgMTg6MTM6MjIsIGJ1ZGR5LnpoYW5nQGFsaXl1bi5jb20gd3JvdGU6PGJyPiA8YmxvY2txdW90 ZSBjbGFzcz0ibW1icWMxIj5Gcm9tOiBCdWRkeVpoYW5nICZsdDtidWRkeS56aGFuZ0BhbGl5dW4u Y29tJmd0Ozxicj4gPGJyPiBUaGlzIGZ1bmN0aW9uIGNvdWxkIGhlbHAgZGV2ZWxvcGVyIHdobyB3 YW50IHRvIGZpbmQgYSBzcGVjaWFsPGJyPiBuYW1lZCBDTUEgYXJlYS48YnI+IDxicj4gVGhlIENN QSBzdXBwb3J0cyBtdWx0aXBsZSBuYW1lZCBDTUEgYXJlYXMsIGFuZCB0aGUgZGV2aWNlIGNvdWxk PGJyPiB1c2Ugb3IgZXhjbHVzaXZlIGEgc3BlY2lhbCBDQU0gYXJhZSB2aWEgImNtYV9hcmVhIiBv biAic3RydWN0PGJyPiBkZXZpY2UiLiBXaGVuIHByb2JpbmcsIHRoZSBkZXZpY2UgY2FuIHNldHVw IHNwZWNpYWwgQ01BIGFyZWEgd2hpY2g8YnI+IGZpbmQgYnkgImNtYV9maW5kX2J5X25hbWUoKSIu PGJyPiA8YnI+IElmIGRldmljZSBjYW4ndCBmaW5kIG5hbWVkIENNQSBhcmVhLCAiY21hX2ZpbmRf YnlfbmFtZSgpIiB3aWxsPGJyPiByZXR1cm4gTlVMTCwgYW5kIGRldmljZSB3aWxsIHVzZWQgZGVm YXVsdCBDTUEgYXJlYS48YnI+PC9ibG9ja3F1b3RlPjxicj5QbGVhc2UgZG8gbm90IGFkZCBuZXcg ZXhwb3J0ZWQgc3ltYm9scyB3aXRob3V0IGFjdHVhbCB1c2Vycy48YnI+PGJyPiA8YmxvY2txdW90 ZSBjbGFzcz0ibW1icWMxIj5TaWduZWQtb2ZmLWJ5OiBCdWRkeVpoYW5nICZsdDtidWRkeS56aGFu Z0BhbGl5dW4uY29tJmd0Ozxicj4gLS0tPGJyPiAgbW0vY21hLmMgfCAxMiArKysrKysrKysrKys8 YnI+ICAxIGZpbGUgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKTxicj4gPGJyPiBkaWZmIC0tZ2l0 IGEvbW0vY21hLmMgYi9tbS9jbWEuYzxicj4gaW5kZXggYmU1NWQxOTg4YzY3Li42NTgxZGFiY2Fm MzQgMTAwNjQ0PGJyPiAtLS0gYS9tbS9jbWEuYzxicj4gKysrIGIvbW0vY21hLmM8YnI+IEBAIC00 MCw2ICs0MCwxOCBAQCBzdHJ1Y3QgY21hIGNtYV9hcmVhc1tNQVhfQ01BX0FSRUFTXTs8YnI+ICB1 bnNpZ25lZCBjbWFfYXJlYV9jb3VudDs8YnI+ICBzdGF0aWMgREVGSU5FX01VVEVYKGNtYV9tdXRl eCk7PGJyPiAgPGJyPiArc3RydWN0IGNtYSAqY21hX2ZpbmRfYnlfbmFtZShjb25zdCBjaGFyICpu YW1lKTxicj4gK3s8YnI+ICsmbmJzcDsmbmJzcDtpbnQgaWR4Ozxicj4gKzxicj4gKyZuYnNwOyZu YnNwO2ZvciAoaWR4ID0gMDsgaWR4ICZsdDsgTUFYX0NNQV9BUkVBUzsgaWR4KyspIHs8YnI+ICsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpZiAoY21hX2FyZWFzW2lkeF0ubmFtZSAmYW1wOyZhbXA7 ICFzdHJjbXAobmFtZSwgY21hX2FyZWFzW2lkeF0ubmFtZSkpPGJyPiArJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cmV0dXJuICZhbXA7Y21hX2FyZWFzW2lkeF07PGJyPiArJm5i c3A7Jm5ic3A7fTxicj4gKyZuYnNwOyZuYnNwO3JldHVybiBOVUxMOzxicj4gK308YnI+ICtFWFBP UlRfU1lNQk9MKGNtYV9maW5kX2J5X25hbWUpOzxicj4gKzxicj4gIHBoeXNfYWRkcl90IGNtYV9n ZXRfYmFzZShjb25zdCBzdHJ1Y3QgY21hICpjbWEpPGJyPiAgezxicj4gIAlyZXR1cm4gUEZOX1BI WVMoY21hLSZndDtiYXNlX3Bmbik7PGJyPiA8YnI+IGJhc2UtY29tbWl0OiA1YjQ4M2ExYTBlYTFh YjE5YTU3MzQwNTFjOTY5MmMyY2ZhYmUxMzI3PGJyPiAtLSA8YnI+IDIuMTcuMTxicj4gPGJyPjwv YmxvY2txdW90ZT48YnI+LS0gPGJyPk1pY2hhbCBIb2Nrbzxicj5TVVNFIExhYnM8L2Jsb2NrcXVv dGU+PCEtLfCfmIAtLT4NCjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg==