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=-8.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT 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 D371FC2BD09 for ; Mon, 9 Dec 2019 22:53:56 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B1E4B2071E for ; Mon, 9 Dec 2019 22:53:56 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B1E4B2071E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nvidia.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 61A406E58B; Mon, 9 Dec 2019 22:53:53 +0000 (UTC) Received: from hqnvemgate25.nvidia.com (hqnvemgate25.nvidia.com [216.228.121.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id DC3DD899B7 for ; Mon, 9 Dec 2019 22:53:51 +0000 (UTC) Received: from hqpgpgate102.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate25.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Mon, 09 Dec 2019 14:53:45 -0800 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate102.nvidia.com (PGP Universal service); Mon, 09 Dec 2019 14:53:51 -0800 X-PGP-Universal: processed; by hqpgpgate102.nvidia.com on Mon, 09 Dec 2019 14:53:51 -0800 Received: from HQMAIL101.nvidia.com (172.20.187.10) by HQMAIL111.nvidia.com (172.20.187.18) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Mon, 9 Dec 2019 22:53:50 +0000 Received: from rnnvemgw01.nvidia.com (10.128.109.123) by HQMAIL101.nvidia.com (172.20.187.10) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Mon, 9 Dec 2019 22:53:50 +0000 Received: from blueforge.nvidia.com (Not Verified[10.110.48.28]) by rnnvemgw01.nvidia.com with Trustwave SEG (v7, 5, 8, 10121) id ; Mon, 09 Dec 2019 14:53:50 -0800 From: John Hubbard To: Andrew Morton Subject: [PATCH v8 00/26] mm/gup: track dma-pinned pages: FOLL_PIN Date: Mon, 9 Dec 2019 14:53:18 -0800 Message-ID: <20191209225344.99740-1-jhubbard@nvidia.com> X-Mailer: git-send-email 2.24.0 MIME-Version: 1.0 X-NVConfidentiality: public X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1575932025; bh=wxsTm/nUQAgyXOXiekXNWJzX7DswluWndSLLkdWyNsU=; h=X-PGP-Universal:From:To:CC:Subject:Date:Message-ID:X-Mailer: MIME-Version:X-NVConfidentiality:Content-Type: Content-Transfer-Encoding; b=LKkHOX01qLpN5I/n8Lng/OWQGwEhr76195x23RkvMppTWIJJbS3i9pwYiPoY5/bc5 e5lZ2j6HDv1RxnFlDmf+27mvJqvICyI/9swSG0NVHC7BwY7bXQWssErtwvybFU+CPO u+kFPOfd8BvFfqgkKvp99lbQIa4c8BLOMS5cIDbAEudwg6i2UIf/2UaPnt13+Iyjzn 0sbdp/2T7n7O7UyZ8N4n4miN8mogBm7OLnJzyzBlGrnY7d1eAMUlVAD7K5+Ep8IXKR QYsDxSG9vHnZW79dgiLsJtnrvvr42XAJPkYuzOsfQ7GjYxUczB56WLiKZW6qxNViGb CnldVfIf5duTw== X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Michal Hocko , Jan Kara , kvm@vger.kernel.org, linux-doc@vger.kernel.org, David Airlie , Dave Chinner , dri-devel@lists.freedesktop.org, LKML , linux-mm@kvack.org, Paul Mackerras , linux-kselftest@vger.kernel.org, Ira Weiny , Jonathan Corbet , linux-rdma@vger.kernel.org, Michael Ellerman , Christoph Hellwig , Jason Gunthorpe , Vlastimil Babka , =?UTF-8?q?Bj=C3=B6rn=20T=C3=B6pel?= , linux-media@vger.kernel.org, Shuah Khan , John Hubbard , linux-block@vger.kernel.org, =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= , Al Viro , Dan Williams , Mauro Carvalho Chehab , Magnus Karlsson , Jens Axboe , netdev@vger.kernel.org, Alex Williamson , linux-fsdevel@vger.kernel.org, bpf@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, "David S . Miller" , Mike Kravetz Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" SGksCgpUaGlzIGltcGxlbWVudHMgYW4gQVBJIG5hbWluZyBjaGFuZ2UgKHB1dF91c2VyX3BhZ2Uq KCkgLS0+CnVucGluX3VzZXJfcGFnZSooKSksIGFuZCBhbHNvIGltcGxlbWVudHMgdHJhY2tpbmcg b2YgRk9MTF9QSU4gcGFnZXMuIEl0CmV4dGVuZHMgdGhhdCB0cmFja2luZyB0byBhIGZldyBzZWxl Y3Qgc3Vic3lzdGVtcy4gTW9yZSBzdWJzeXN0ZW1zIHdpbGwKYmUgYWRkZWQgaW4gZm9sbG93IHVw IHdvcmsuCgpDaHJpc3RvcGggSGVsbHdpZywgYSBjb3VwbGUgb2YgcG9pbnRzIG9mIGludGVyZXN0 OgoKYSkgSSd2ZSBtb3ZlZCB0aGUgYnVsayBvZiB0aGUgY29kZSBvdXQgb2YgdGhlIGlubGluZSBm dW5jdGlvbnMsIGFzCiAgIHJlcXVlc3RlZCwgZm9yIHRoZSBkZXZtYXAgY2hhbmdlcyAocGF0Y2gg NDogIm1tOiBkZXZtYXA6IHJlZmFjdG9yCiAgIDEtYmFzZWQgcmVmY291bnRpbmcgZm9yIFpPTkVf REVWSUNFIHBhZ2VzIikuCgpiKSBDb250cmFyeSB0byBteSBlYXJsaWVyIHJlc3BvbnNlIHRvIHlv dXIgcmV2aWV3LCBJIGhhdmUgbm90IGFjdHVhbGx5CiAgIG1lcmdlZCBwYXRjaCAyMyAoIm1tL2d1 cDogcGFzcyBmbGFncyBhcmcgdG8gX19ndXBfZGV2aWNlXyoKICAgZnVuY3Rpb25zIikgaW50byBw YXRjaCAyNCAoIm1tL2d1cDogdHJhY2sgRk9MTF9QSU4gcGFnZXMiKS4gVGhpcyBpcwogICBiZWNh dXNlIEkgc3VzcGVjdCB0aGF0IGl0J3MgYmV0dGVyIHRvIGF2b2lkIG1ha2luZyBwYXRjaCAyNCBh bnkgbGFyZ2VyCiAgIGFuZCB3b3JzZSB0byByZXZpZXcgdGhhbiBpdCBhbHJlYWR5IGlzLiBCdXQg aWYgeW91IGZlZWwgc3Ryb25nbHkKICAgYWJvdXQgaXQsIEknbGwgY29tYmluZSB0aGVtIGFueXdh eS4KCkNoYW5nZXMgc2luY2Ugdjc6CgoqIFJlYmFzZWQgb250byBMaW51eCA1LjUtcmMxCgoqIFJl d29ya2VkIHRoZSBncmFiX3BhZ2UoKSBhbmQgdHJ5X2dyYWJfY29tcG91bmRfaGVhZCgpLCBmb3Ig QVBJCiAgY29uc2lzdGVuY3kgYW5kIGxlc3MgZGlmZnMgKHRoYW5rcyB0byBKYW4gS2FyYSdzIHJl dmlld3MpLgoKKiBBZGRlZCBMZW9uIFJvbWFub3Zza3kncyByZXZpZXdlZC1ieSB0YWdzIGZvciB0 d28gb2YgdGhlIElCLXJlbGF0ZWQKICBwYXRjaGVzLgoKKiBwYXRjaCA0IHJlZmFjdG9yaW5nIGNo YW5nZXMsIGFzIG1lbnRpb25lZCBhYm92ZS4KClRoZXJlIGlzIGEgZ2l0IHJlcG8gYW5kIGJyYW5j aCwgZm9yIGNvbnZlbmllbmNlOgoKICAgIGdpdEBnaXRodWIuY29tOmpvaG5odWJiYXJkL2xpbnV4 LmdpdCBwaW5fdXNlcl9wYWdlc190cmFja2luZ192OAoKRm9yIHRoZSByZW1haW5pbmcgbGlzdCBv ZiAiY2hhbmdlcyBzaW5jZSB2ZXJzaW9uIE4iLCB0aG9zZSBhcmUgYWxsIGluCnY3LCB3aGljaCBp cyBoZXJlOgoKICBodHRwczovL2xvcmUua2VybmVsLm9yZy9yLzIwMTkxMTIxMDcxMzU0LjQ1NjYx OC0xLWpodWJiYXJkQG52aWRpYS5jb20KCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpPdmVydmlldzoKClRoaXMgaXMgYSBwcmVyZXF1 aXNpdGUgdG8gc29sdmluZyB0aGUgcHJvYmxlbSBvZiBwcm9wZXIgaW50ZXJhY3Rpb25zCmJldHdl ZW4gZmlsZS1iYWNrZWQgcGFnZXMsIGFuZCBbUl1ETUEgYWN0aXZpdGllcywgYXMgZGlzY3Vzc2Vk IGluIFsxXSwKWzJdLCBbM10sIGFuZCBpbiBhIHJlbWFya2FibGUgbnVtYmVyIG9mIGVtYWlsIHRo cmVhZHMgc2luY2UgYWJvdXQKMjAxNy4gOikKCkEgbmV3IGludGVybmFsIGd1cCBmbGFnLCBGT0xM X1BJTiBpcyBpbnRyb2R1Y2VkLCBhbmQgdGhvcm91Z2hseQpkb2N1bWVudGVkIGluIHRoZSBsYXN0 IHBhdGNoJ3MgRG9jdW1lbnRhdGlvbi92bS9waW5fdXNlcl9wYWdlcy5yc3QuCgpJIGJlbGlldmUg dGhhdCB0aGlzIHdpbGwgcHJvdmlkZSBhIGdvb2Qgc3RhcnRpbmcgcG9pbnQgZm9yIGRvaW5nIHRo ZQpsYXlvdXQgbGVhc2Ugd29yayB0aGF0IElyYSBXZWlueSBoYXMgYmVlbiB3b3JraW5nIG9uLiBU aGF0J3MgYmVjYXVzZQp0aGVzZSBuZXcgd3JhcHBlciBmdW5jdGlvbnMgcHJvdmlkZSBhIGNsZWFu LCBjb25zdHJhaW5lZCwgc3lzdGVtYXRpY2FsbHkKbmFtZWQgc2V0IG9mIGZ1bmN0aW9uYWxpdHkg dGhhdCwgYWdhaW4sIGlzIHJlcXVpcmVkIGluIG9yZGVyIHRvIGV2ZW4Ka25vdyBpZiBhIHBhZ2Ug aXMgImRtYS1waW5uZWQiLgoKSW4gY29udHJhc3QgdG8gZWFybGllciBhcHByb2FjaGVzLCB0aGUg cGFnZSB0cmFja2luZyBjYW4gYmUKaW5jcmVtZW50YWxseSBhcHBsaWVkIHRvIHRoZSBrZXJuZWwg Y2FsbCBzaXRlcyB0aGF0LCB1bnRpbCBub3csIGhhdmUKYmVlbiBzaW1wbHkgY2FsbGluZyBnZXRf dXNlcl9wYWdlcygpICgiZ3VwIikuIEluIG90aGVyIHdvcmRzLCBvcHQtaW4gYnkKY2hhbmdpbmcg ZnJvbSB0aGlzOgoKICAgIGdldF91c2VyX3BhZ2VzKCkgKHNldHMgRk9MTF9HRVQpCiAgICBwdXRf cGFnZSgpCgp0byB0aGlzOgogICAgcGluX3VzZXJfcGFnZXMoKSAoc2V0cyBGT0xMX1BJTikKICAg IHVucGluX3VzZXJfcGFnZSgpCgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KVGVzdGluZzoKCiogSSd2ZSBkb25lIHNvbWUgb3ZlcmFs bCBrZXJuZWwgdGVzdGluZyAoTFRQLCBhbmQgYSBmZXcgb3RoZXIgZ29vZGllcyksCiAgYW5kIHNv bWUgZGlyZWN0ZWQgdGVzdGluZyB0byBleGVyY2lzZSBzb21lIG9mIHRoZSBjaGFuZ2VzLiBBbmQg YXMgeW91CiAgY2FuIHNlZSwgZ3VwX2JlbmNobWFyayBpcyBlbmhhbmNlZCB0byBleGVyY2lzZSB0 aGlzLiBCYXNpY2FsbHksIEkndmUKICBiZWVuIGFibGUgdG8gcnVudGltZSB0ZXN0IHRoZSBjb3Jl IGdldF91c2VyX3BhZ2VzKCkgYW5kCiAgcGluX3VzZXJfcGFnZXMoKSBhbmQgcmVsYXRlZCByb3V0 aW5lcywgYnV0IG5vdCBzbyBtdWNoIG9uIHNldmVyYWwgb2YKICB0aGUgY2FsbCBzaXRlcy0tYnV0 IHRob3NlIGFyZSBnZW5lcmFsbHkganVzdCBhIGNvdXBsZSBvZiBsaW5lcwogIGNoYW5nZWQsIGVh Y2guCgogIE5vdCBtdWNoIG9mIHRoZSBrZXJuZWwgaXMgYWN0dWFsbHkgdXNpbmcgdGhpcywgd2hp Y2ggb24gb25lIGhhbmQKICByZWR1Y2VzIHJpc2sgcXVpdGUgYSBsb3QuIEJ1dCBvbiB0aGUgb3Ro ZXIgaGFuZCwgdGVzdGluZyBjb3ZlcmFnZQogIGlzIGxvdy4gU28gSSdkIGxvdmUgaXQgaWYsIGlu IHBhcnRpY3VsYXIsIHRoZSBJbmZpbmliYW5kIGFuZCBQb3dlclBDCiAgZm9sa3MgY291bGQgZG8g YSBzbW9rZSB0ZXN0IG9mIHRoaXMgc2VyaWVzIGZvciBtZS4KCiAgUnVudGltZSB0ZXN0aW5nIGZv ciB0aGUgY2FsbCBzaXRlcyBzbyBmYXIgaXMgcHJldHR5IGxpZ2h0OgoKICAgICogaW9fdXJpbmc6 IFNvbWUgZGlyZWN0ZWQgdGVzdHMgZnJvbSBsaWJ1cmluZyBleGVyY2lzZSB0aGlzLCBhbmQKICAg ICAgICAgICAgICAgIHRoZXkgcGFzcy4KICAgICogcHJvY2Vzc192bV9hY2Nlc3MuYzogQSBzbWFs bCBkaXJlY3RlZCB0ZXN0IHBhc3Nlcy4KICAgICogZ3VwX2JlbmNobWFyazogdGhlIGVuaGFuY2Vk IHZlcnNpb24gaGl0cyB0aGUgbmV3IGd1cC5jIGNvZGUsIGFuZAogICAgICAgICAgICAgICAgICAg ICBwYXNzZXMuCiAgICAqIGluZmluaWJhbmQ6IHJhbiAiaWJfd3JpdGVfYnciLCB3aGljaCBleGVy Y2lzZXMgdGhlIHVtZW0uYyBjaGFuZ2VzLAogICAgICAgICAgICAgICAgICBidXQgbm90IHRoZSBv dGhlciBjaGFuZ2VzLgogICAgKiBWRklPOiBjb21waWxlcyAoSSdtIHZvd2luZyB0byBzZXQgdXAg YSBydW4gdGltZSB0ZXN0IHNvb24sIGJ1dCBpdCdzCiAgICAgICAgICAgICAgICAgICAgICBub3Qg cmVhZHkganVzdCB5ZXQpCiAgICAqIHBvd2VycGM6IGl0IGNvbXBpbGVzLi4uCiAgICAqIGRybS92 aWE6IGNvbXBpbGVzLi4uCiAgICAqIGdvbGRmaXNoOiBjb21waWxlcy4uLgogICAgKiBuZXQveGRw OiBjb21waWxlcy4uLgogICAgKiBtZWRpYS92NGwyOiBjb21waWxlcy4uLgoKWzFdIFNvbWUgc2xv dyBwcm9ncmVzcyBvbiBnZXRfdXNlcl9wYWdlcygpIChBcHIgMiwgMjAxOSk6IGh0dHBzOi8vbHdu Lm5ldC9BcnRpY2xlcy83ODQ1NzQvClsyXSBETUEgYW5kIGdldF91c2VyX3BhZ2VzKCkgKExQQzog RGVjIDEyLCAyMDE4KTogaHR0cHM6Ly9sd24ubmV0L0FydGljbGVzLzc3NDQxMS8KWzNdIFRoZSB0 cm91YmxlIHdpdGggZ2V0X3VzZXJfcGFnZXMoKSAoQXByIDMwLCAyMDE4KTogaHR0cHM6Ly9sd24u bmV0L0FydGljbGVzLzc1MzAyNy8KCkRhbiBXaWxsaWFtcyAoMSk6CiAgbW06IENsZWFudXAgX19w dXRfZGV2bWFwX21hbmFnZWRfcGFnZSgpIHZzIC0+cGFnZV9mcmVlKCkKCkpvaG4gSHViYmFyZCAo MjUpOgogIG1tL2d1cDogZmFjdG9yIG91dCBkdXBsaWNhdGUgY29kZSBmcm9tIGZvdXIgcm91dGlu ZXMKICBtbS9ndXA6IG1vdmUgdHJ5X2dldF9jb21wb3VuZF9oZWFkKCkgdG8gdG9wLCBmaXggbWlu b3IgaXNzdWVzCiAgbW06IGRldm1hcDogcmVmYWN0b3IgMS1iYXNlZCByZWZjb3VudGluZyBmb3Ig Wk9ORV9ERVZJQ0UgcGFnZXMKICBnb2xkaXNoX3BpcGU6IHJlbmFtZSBsb2NhbCBwaW5fdXNlcl9w YWdlcygpIHJvdXRpbmUKICBtbTogZml4IGdldF91c2VyX3BhZ2VzX3JlbW90ZSgpJ3MgaGFuZGxp bmcgb2YgRk9MTF9MT05HVEVSTQogIHZmaW86IGZpeCBGT0xMX0xPTkdURVJNIHVzZSwgc2ltcGxp ZnkgZ2V0X3VzZXJfcGFnZXNfcmVtb3RlKCkgY2FsbAogIG1tL2d1cDogYWxsb3cgRk9MTF9GT1JD RSBmb3IgZ2V0X3VzZXJfcGFnZXNfZmFzdCgpCiAgSUIvdW1lbTogdXNlIGdldF91c2VyX3BhZ2Vz X2Zhc3QoKSB0byBwaW4gRE1BIHBhZ2VzCiAgbW0vZ3VwOiBpbnRyb2R1Y2UgcGluX3VzZXJfcGFn ZXMqKCkgYW5kIEZPTExfUElOCiAgZ29sZGlzaF9waXBlOiBjb252ZXJ0IHRvIHBpbl91c2VyX3Bh Z2VzKCkgYW5kIHB1dF91c2VyX3BhZ2UoKQogIElCL3tjb3JlLGh3LHVtZW19OiBzZXQgRk9MTF9Q SU4gdmlhIHBpbl91c2VyX3BhZ2VzKigpLCBmaXggdXAgT0RQCiAgbW0vcHJvY2Vzc192bV9hY2Nl c3M6IHNldCBGT0xMX1BJTiB2aWEgcGluX3VzZXJfcGFnZXNfcmVtb3RlKCkKICBkcm0vdmlhOiBz ZXQgRk9MTF9QSU4gdmlhIHBpbl91c2VyX3BhZ2VzX2Zhc3QoKQogIGZzL2lvX3VyaW5nOiBzZXQg Rk9MTF9QSU4gdmlhIHBpbl91c2VyX3BhZ2VzKCkKICBuZXQveGRwOiBzZXQgRk9MTF9QSU4gdmlh IHBpbl91c2VyX3BhZ2VzKCkKICBtZWRpYS92NGwyLWNvcmU6IHNldCBwYWdlcyBkaXJ0eSB1cG9u IHJlbGVhc2luZyBETUEgYnVmZmVycwogIG1lZGlhL3Y0bDItY29yZTogcGluX3VzZXJfcGFnZXMg KEZPTExfUElOKSBhbmQgcHV0X3VzZXJfcGFnZSgpCiAgICBjb252ZXJzaW9uCiAgdmZpbywgbW06 IHBpbl91c2VyX3BhZ2VzIChGT0xMX1BJTikgYW5kIHB1dF91c2VyX3BhZ2UoKSBjb252ZXJzaW9u CiAgcG93ZXJwYzogYm9vazNzNjQ6IGNvbnZlcnQgdG8gcGluX3VzZXJfcGFnZXMoKSBhbmQgcHV0 X3VzZXJfcGFnZSgpCiAgbW0vZ3VwX2JlbmNobWFyazogdXNlIHByb3BlciBGT0xMX1dSSVRFIGZs YWdzIGluc3RlYWQgb2YgaGFyZC1jb2RpbmcKICAgICIxIgogIG1tLCB0cmVlLXdpZGU6IHJlbmFt ZSBwdXRfdXNlcl9wYWdlKigpIHRvIHVucGluX3VzZXJfcGFnZSooKQogIG1tL2d1cDogcGFzcyBm bGFncyBhcmcgdG8gX19ndXBfZGV2aWNlXyogZnVuY3Rpb25zCiAgbW0vZ3VwOiB0cmFjayBGT0xM X1BJTiBwYWdlcwogIG1tL2d1cF9iZW5jaG1hcms6IHN1cHBvcnQgcGluX3VzZXJfcGFnZXMoKSBh bmQgcmVsYXRlZCBjYWxscwogIHNlbGZ0ZXN0cy92bTogcnVuX3ZtdGVzdHM6IGludm9rZSBndXBf YmVuY2htYXJrIHdpdGggYmFzaWMgRk9MTF9QSU4KICAgIGNvdmVyYWdlCgogRG9jdW1lbnRhdGlv bi9jb3JlLWFwaS9pbmRleC5yc3QgICAgICAgICAgICB8ICAgMSArCiBEb2N1bWVudGF0aW9uL2Nv cmUtYXBpL3Bpbl91c2VyX3BhZ2VzLnJzdCAgIHwgMjMzICsrKysrKysrCiBhcmNoL3Bvd2VycGMv bW0vYm9vazNzNjQvaW9tbXVfYXBpLmMgICAgICAgIHwgIDEyICstCiBkcml2ZXJzL2dwdS9kcm0v dmlhL3ZpYV9kbWFibGl0LmMgICAgICAgICAgIHwgICA2ICstCiBkcml2ZXJzL2luZmluaWJhbmQv Y29yZS91bWVtLmMgICAgICAgICAgICAgIHwgIDE5ICstCiBkcml2ZXJzL2luZmluaWJhbmQvY29y ZS91bWVtX29kcC5jICAgICAgICAgIHwgIDEzICstCiBkcml2ZXJzL2luZmluaWJhbmQvaHcvaGZp MS91c2VyX3BhZ2VzLmMgICAgIHwgICA0ICstCiBkcml2ZXJzL2luZmluaWJhbmQvaHcvbXRoY2Ev bXRoY2FfbWVtZnJlZS5jIHwgICA4ICstCiBkcml2ZXJzL2luZmluaWJhbmQvaHcvcWliL3FpYl91 c2VyX3BhZ2VzLmMgIHwgICA0ICstCiBkcml2ZXJzL2luZmluaWJhbmQvaHcvcWliL3FpYl91c2Vy X3NkbWEuYyAgIHwgICA4ICstCiBkcml2ZXJzL2luZmluaWJhbmQvaHcvdXNuaWMvdXNuaWNfdWlv bS5jICAgIHwgICA0ICstCiBkcml2ZXJzL2luZmluaWJhbmQvc3cvc2l3L3Npd19tZW0uYyAgICAg ICAgIHwgICA0ICstCiBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92aWRlb2J1Zi1kbWEtc2cuYyAg IHwgICA4ICstCiBkcml2ZXJzL252ZGltbS9wbWVtLmMgICAgICAgICAgICAgICAgICAgICAgIHwg ICA2IC0KIGRyaXZlcnMvcGxhdGZvcm0vZ29sZGZpc2gvZ29sZGZpc2hfcGlwZS5jICAgfCAgMzUg Ky0KIGRyaXZlcnMvdmZpby92ZmlvX2lvbW11X3R5cGUxLmMgICAgICAgICAgICAgfCAgMzUgKy0K IGZzL2lvX3VyaW5nLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKy0KIGlu Y2x1ZGUvbGludXgvbW0uaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNDUgKysrKy0KIGlu Y2x1ZGUvbGludXgvbW16b25lLmggICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKwogaW5jbHVk ZS9saW51eC9wYWdlX3JlZi5oICAgICAgICAgICAgICAgICAgICB8ICAxMCArCiBtbS9ndXAuYyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgNTk1ICsrKysrKysrKysrKysrKy0t LS0tCiBtbS9ndXBfYmVuY2htYXJrLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDc0ICsr LQogbW0vaHVnZV9tZW1vcnkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyMyArLQog bW0vaHVnZXRsYi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNSArLQogbW0v bWVtcmVtYXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA3NiArKy0KIG1tL3By b2Nlc3Nfdm1fYWNjZXNzLmMgICAgICAgICAgICAgICAgICAgICAgfCAgMjggKy0KIG1tL3N3YXAu YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjQgKwogbW0vdm1zdGF0LmMg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBuZXQveGRwL3hkcF91bWVt LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiB0b29scy90ZXN0aW5nL3NlbGZ0 ZXN0cy92bS9ndXBfYmVuY2htYXJrLmMgIHwgIDIxICstCiB0b29scy90ZXN0aW5nL3NlbGZ0ZXN0 cy92bS9ydW5fdm10ZXN0cyAgICAgIHwgIDIyICsKIDMxIGZpbGVzIGNoYW5nZWQsIDEwOTMgaW5z ZXJ0aW9ucygrKSwgMzU0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IERvY3VtZW50 YXRpb24vY29yZS1hcGkvcGluX3VzZXJfcGFnZXMucnN0CgotLSAKMi4yNC4wCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=