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=-2.0 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 D1D37C433E1 for ; Thu, 9 Jul 2020 08:48:21 +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 8424920672 for ; Thu, 9 Jul 2020 08:48:21 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amdcloud.onmicrosoft.com header.i=@amdcloud.onmicrosoft.com header.b="lGiStPcC" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8424920672 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amd.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 D44A96EA0A; Thu, 9 Jul 2020 08:48:20 +0000 (UTC) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2066.outbound.protection.outlook.com [40.107.93.66]) by gabe.freedesktop.org (Postfix) with ESMTPS id F301B6EA0A; Thu, 9 Jul 2020 08:48:18 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h26acwBc+wdMsJ24ycB1t+di18uEFxDpR2XeKHw10mTLqSvg4wxYF8et+vBwiXeAQ9eIJO+D7QzpPy5o3pGoLTQcwUFJgiNRK1x+lH/t9AeCozyqMqCqR1M62ngmeAe5h6ha2P4HVvGWO8DkDp6Hrsy/vm1vl2vC8RbfpBVG4EFXl2/dOZqXJr5LWUvGvjynL57Rw7N6/VUeFlGnFD4uC0XNEm3LiUoAI9LCpWAql67uR8yvVDTIWNkMkFFOsiYalt1k8+iiUhmuMa+pT0FaN8CFJvibkFhuLweN97qvpneFjoB0dbeGqOwa/BzojxGvea4WYVYLcW8c4ouolzohZw== 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-SenderADCheck; bh=MaQnotDrWNiXOg52ORebYn9NwfPraEStlK62ZKOR3n0=; b=fojjHKBhQl2SoVdM7a06w2nVxgvYp9pb+a5UmTp3eCvAL8AwtOfmP4yuR3iBVuhLOrdGqXjW+EGXq+yXlxy/8MbsLtvzKsrHA6U7V1prmHguEBHrUEfOsVioWfnKXZ19LVD9QG6O+sGKpp6owEz8mLzshkscFFpAaP1HJeqAtZRahUVdfzHqa65y9/TIU+MDi6dxmbVU2Krj2BymMgU7c3D5s4DB9OmgYHNJ6cM9t7uG6+cid9sp2gfx+iraFjyE1BxrSllm4HsQQgVLS1DqjkeB9ZZwUtr179+EO2R96uLCBnytfsJARYRgkdsL18kE+GuJgXos3fKDJbUzs/6zvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MaQnotDrWNiXOg52ORebYn9NwfPraEStlK62ZKOR3n0=; b=lGiStPcC953kVCwKng54/GL64yk7bxMYa+Tnjs4DikVn1KjIjxAS/EAVc5lACkspD3QVUyJxExgQ3th9EjzoQX0uZb+w4KL8TwmgDJhKMxfdV+ByeSX+7+xIzSN+BDbM9r9qlrE1wL0LAcRsput/4b0/c3psleZeCieyi3wjwq8= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=amd.com; Received: from MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) by MN2PR12MB4549.namprd12.prod.outlook.com (2603:10b6:208:268::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.20; Thu, 9 Jul 2020 08:48:13 +0000 Received: from MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::a16e:8812:b4c0:918d]) by MN2PR12MB3775.namprd12.prod.outlook.com ([fe80::a16e:8812:b4c0:918d%6]) with mapi id 15.20.3174.021; Thu, 9 Jul 2020 08:48:13 +0000 Subject: Re: [PATCH 1/2] drm/vgem: Do not allocate backing shmemfs file for an import dmabuf object To: Daniel Vetter , Rob Herring , Tomeu Vizoso , Alyssa Rosenzweig , Steven Price References: <20200707160012.1299338-1-chris@chris-wilson.co.uk> <159414243217.17526.6453360763938648186@build.alporthouse.com> <159414692385.17526.10068675168880429917@build.alporthouse.com> <20200708095405.GJ3278063@phenom.ffwll.local> From: =?UTF-8?Q?Christian_K=c3=b6nig?= Message-ID: Date: Thu, 9 Jul 2020 10:48:08 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 In-Reply-To: Content-Language: en-US X-ClientProxiedBy: AM0PR10CA0132.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:e6::49) To MN2PR12MB3775.namprd12.prod.outlook.com (2603:10b6:208:159::19) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [IPv6:2a02:908:1252:fb60:be8a:bd56:1f94:86e7] (2a02:908:1252:fb60:be8a:bd56:1f94:86e7) by AM0PR10CA0132.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:e6::49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3174.20 via Frontend Transport; Thu, 9 Jul 2020 08:48:11 +0000 X-Originating-IP: [2a02:908:1252:fb60:be8a:bd56:1f94:86e7] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 7397f864-4167-428d-c3d9-08d823e4d0a8 X-MS-TrafficTypeDiagnostic: MN2PR12MB4549: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1417; X-Forefront-PRVS: 04599F3534 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nTgJRm2WFxjTrvlchTB4J9bos7+rwHbbS4YeJyCKlNmjOVX2xFOV4n37t/dEVlc670u8A1z8LpNK8iNRGlckBeGy11V6JXsXpatWiRTDqhiZkZ0Ihl6CqDanASd5OxMGAyVbHBeUPdRGVn0LxenLzSYn1KCla+z/ATMwKzZroTUpImPSnobMCyPWhxc1rnGV3/2SZju5iY3JY5W/I9Qik7otWlWVVJgkJ5GCbg97yeMIeOz928og9miX847jfyAu1fxpHdLVsJUnzX6X27NKOf8U4TxG7slI00gXAYEft9P7XkrZKEtk+lClvfywiBvVQ9+Uj0sqdH/STEGwV9reodcsi2MSv9uMP2+AgRYcrptHqfGC+F3Xw3lsRIGhFOHOu1pObzvRPXaKrUalCq17cf4fuqHQXNS4dqRC4jEQBYGEtoCbwpbRgmLeybrFPkGdNgFOLklmARJKzaIkb5PPjQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR12MB3775.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(396003)(366004)(346002)(39860400002)(376002)(136003)(7416002)(4326008)(8676002)(66574015)(52116002)(31686004)(6486002)(83080400001)(31696002)(86362001)(186003)(2616005)(966005)(83380400001)(8936002)(53546011)(16526019)(2906002)(6666004)(5660300002)(54906003)(66476007)(66556008)(110136005)(316002)(478600001)(66946007)(36756003)(45080400002)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: PsQpGgAzS0XMji203unhTB8Yi5LWOClkQNrE4VzFaGjpxW3SJW5mvc8xcIdag0gLN6v7daq7VW0nHFyYpF3Vwm0NJLFeRvXvyRhnbnD70TFakW6FmoTbSSKEYC8SYOLGUW6BgOxcuA9XRa+hU3llXx+6OvchcljtppmaKqYdNwleOabSlo3ZGFnB9lVcH88Ibyy8T96+l19hFYPnKS/K1wvckmIDIQ2PoBctvbA8JYMWqBYzadFS33I63w17Hn8lttEj41SPfQmG49UdmCCN3i+EF4grOy3oJQh4xAdRecTy5d03BKqtSJo9eEOOZFX1tALIKW/8WsZsEoPzCUdnRm0/vks8J/xwtBPCsenlWGzEYhtfJBGGEJ/6NmZlIwzItdtl5bPQPqvGN/ZO90Q7SQDpfm0qv9S/nQr7VUVh5hkNi0TwXIx28Tp30s6lYjjQtTkoCEVBk6smcgTAB/6yu8DmzV31BSGDwjZ8NbIGOYs+7UJn9TI/optdI6kv4rOkUUDx9qRDN37RgPh9cDoK0neZGOBSpe2CzPY6Jwpp/GKk5v1bSu8RmAoiP+Ky0L2M X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7397f864-4167-428d-c3d9-08d823e4d0a8 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3775.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2020 08:48:13.5590 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HlNsGmttP0BNTOxz7OHVR2NM9306mrSlh5qkNB45gBof0YiuQSjLDygIqCxe1uh5 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4549 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?Q?Thomas_Hellstr=c3=b6m?= , "# v4.10+" , lepton , dri-devel , Chris Wilson , intel-gfx Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" QW0gMDguMDcuMjAgdW0gMTg6MTkgc2NocmllYiBEYW5pZWwgVmV0dGVyOgo+IE9uIFdlZCwgSnVs IDgsIDIwMjAgYXQgNjoxMSBQTSBEYW5pZWwgVmV0dGVyIDxkYW5pZWxAZmZ3bGwuY2g+IHdyb3Rl Ogo+PiBPbiBXZWQsIEp1bCA4LCAyMDIwIGF0IDU6MDUgUE0gQ2hyaXN0aWFuIEvDtm5pZyA8Y2hy aXN0aWFuLmtvZW5pZ0BhbWQuY29tPiB3cm90ZToKPj4+IEFtIDA4LjA3LjIwIHVtIDE3OjAxIHNj aHJpZWIgRGFuaWVsIFZldHRlcjoKPj4+PiBPbiBXZWQsIEp1bCA4LCAyMDIwIGF0IDQ6MzcgUE0g Q2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPiB3cm90ZToKPj4+Pj4g QW0gMDguMDcuMjAgdW0gMTE6NTQgc2NocmllYiBEYW5pZWwgVmV0dGVyOgo+Pj4+Pj4gT24gV2Vk LCBKdWwgMDgsIDIwMjAgYXQgMTE6MjI6MDBBTSArMDIwMCwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90 ZToKPj4+Pj4+PiBBbSAwNy4wNy4yMCB1bSAyMDozNSBzY2hyaWViIENocmlzIFdpbHNvbjoKPj4+ Pj4+Pj4gUXVvdGluZyBsZXB0b24gKDIwMjAtMDctMDcgMTk6MTc6NTEpCj4+Pj4+Pj4+PiBPbiBU dWUsIEp1bCA3LCAyMDIwIGF0IDEwOjIwIEFNIENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2ls c29uLmNvLnVrPiB3cm90ZToKPj4+Pj4+Pj4+PiBRdW90aW5nIGxlcHRvbiAoMjAyMC0wNy0wNyAx ODowNToyMSkKPj4+Pj4+Pj4+Pj4gT24gVHVlLCBKdWwgNywgMjAyMCBhdCA5OjAwIEFNIENocmlz IFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPiB3cm90ZToKPj4+Pj4+Pj4+Pj4+IElm IHdlIGFzc2lnbiBvYmotPmZpbHAsIHdlIGJlbGlldmUgdGhhdCB0aGUgY3JlYXRlIHZnZW0gYm8g aXMgbmF0aXZlIGFuZAo+Pj4+Pj4+Pj4+Pj4gYWxsb3cgZGlyZWN0IG9wZXJhdGlvbnMgbGlrZSBt bWFwKCkgYXNzdW1pbmcgaXQgYmVoYXZlcyBhcyBiYWNrZWQgYnkgYQo+Pj4+Pj4+Pj4+Pj4gc2ht ZW1mcyBpbm9kZS4gV2hlbiBpbXBvcnRlZCBmcm9tIGEgZG1hYnVmLCB0aGUgb2JqLT5wYWdlcyBh cmUKPj4+Pj4+Pj4+Pj4+IG5vdCBhbHdheXMgbWVhbmluZ2Z1bCBhbmQgdGhlIHNobWVtZnMgYmFj a2luZyBzdG9yZSBtaXNsZWFkaW5nLgo+Pj4+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+Pj4+IE5vdGUsIHRo YXQgcmVndWxhciBtbWFwIGFjY2VzcyB0byBhIHZnZW0gYm8gaXMgdmlhIHRoZSBkdW1iIGJ1ZmZl ciBBUEksCj4+Pj4+Pj4+Pj4+PiBhbmQgdGhhdCByZWplY3RzIGF0dGVtcHRzIHRvIG1tYXAgYW4g aW1wb3J0ZWQgZG1hYnVmLAo+Pj4+Pj4+Pj4+PiBXaGF0IGRvIHlvdSBtZWFuIGJ5ICJyZWd1bGFy IG1tYXAgYWNjZXNzIiBoZXJlPyAgSXQgbG9va3MgbGlrZSB2Z2VtIGlzCj4+Pj4+Pj4+Pj4+IHVz aW5nIHZnZW1fZ2VtX2R1bWJfbWFwIGFzIC5kdW1iX21hcF9vZmZzZXQgY2FsbGJhY2sgdGhlbiBp dCBkb2Vzbid0IGNhbGwKPj4+Pj4+Pj4+Pj4gZHJtX2dlbV9kdW1iX21hcF9vZmZzZXQKPj4+Pj4+ Pj4+PiBBcyBJIHRvbyBmb3VuZCBvdXQsIGFuZCBzbyBoYWQgdG8gY29ycmVjdCBteSBzdG9yeSB0 ZWxsaW5nLgo+Pj4+Pj4+Pj4+Cj4+Pj4+Pj4+Pj4gQnkgcmVndWxhciBtbWFwKCkgYWNjZXNzIEkg bWVhbiBtbWFwIG9uIHRoZSB2Z2VtIGJvIFt2aWEgdGhlIGR1bWIgYnVmZmVyCj4+Pj4+Pj4+Pj4g QVBJXSBhcyBvcHBvc2VkIHRvIG1tYXAoKSB2aWEgYW4gZXhwb3J0ZWQgZG1hLWJ1ZiBmZC4gSSBo YWQgdG8gbG9vayBhdAo+Pj4+Pj4+Pj4+IGlndCB0byBzZWUgaG93IGl0IHdhcyBiZWluZyB1c2Vk Lgo+Pj4+Pj4+Pj4gTm93IGl0IHNlZW1zIHlvdXIgZml4IGlzIHRvIGRpc2FibGUgInJlZ3VsYXIg bW1hcCIgb24gaW1wb3J0ZWQgZG1hIGJ1Zgo+Pj4+Pj4+Pj4gZm9yIHZnZW0uIEkgYW0gbm90IHJl YWxseSBhIGdyYXBoaWMgZ3V5LCBidXQgdGhlbiB0aGUgYXBpIGxvb2tzIGxpa2U6Cj4+Pj4+Pj4+ PiBmb3IgYSBnZW0gaGFuZGxlLCB1c2VyIHNwYWNlIGhhcyB0byBndWVzcyB0byBmaW5kIG91dCB0 aGUgd2F5IHRvIG1tYXAKPj4+Pj4+Pj4+IGl0LiBJZiB1c2VyIHNwYWNlIGd1ZXNzIHdyb25nLCB0 aGVuIGl0IHdpbGwgZmFpbCB0byBtbWFwLiBJcyB0aGlzIHRoZQo+Pj4+Pj4+Pj4gZXhwZWN0ZWQg d2F5Cj4+Pj4+Pj4+PiBmb3IgcGVvcGxlIHRvIGhhbmRsZSBncHUgYnVmZmVyPwo+Pj4+Pj4+PiBZ b3UgZWl0aGVyIGhhdmUgYSBkdW1iIGJ1ZmZlciBoYW5kbGUsIG9yIGEgZG1hLWJ1ZiBmZC4gSWYg eW91IGhhdmUgdGhlCj4+Pj4+Pj4+IGhhbmRsZSwgeW91IGhhdmUgdG8gdXNlIHRoZSBkdW1iIGJ1 ZmZlciBBUEksIHRoZXJlJ3Mgbm8gb3RoZXIgd2F5IHRvCj4+Pj4+Pj4+IG1tYXAgaXQuIElmIHlv dSBoYXZlIHRoZSBkbWEtYnVmIGZkLCB5b3Ugc2hvdWxkIG1tYXAgaXQgZGlyZWN0bHkuIFRob3Nl Cj4+Pj4+Pj4+IHR3byBhcmUgY2xlYXIuCj4+Pj4+Pj4+Cj4+Pj4+Pj4+IEl0J3Mgd2hlbiB5b3Ug aW1wb3J0IHRoZSBkbWEtYnVmIGludG8gdmdlbSBhbmQgY3JlYXRlIGEgaGFuZGxlIG91dCBvZgo+ Pj4+Pj4+PiBpdCwgdGhhdCdzIHdoZW4gdGhlIGhhbmRsZSBpcyBubyBsb25nZXIgZmlyc3QgY2xh c3MgYW5kIGNlcnRhaW4gdUFQSQo+Pj4+Pj4+PiBbdGhlIGR1bWIgYnVmZmVyIEFQSSBpbiBwYXJ0 aWN1bGFyXSBmYWlsLgo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBJdCdzIG5vdCBicmlsbGlhbnQsIGFzIHlv dSBzYXksIGl0IHJlcXVpcmVzIHRoZSB1c2VyIHRvIHJlbWVtYmVyIHRoZQo+Pj4+Pj4+PiBkaWZm ZXJlbmNlIGJldHdlZW4gdGhlIGhhbmRsZXMsIGJ1dCBhdCB0aGUgc2FtZSB0aW1lIGl0IGRvZXMg cHJldmVudAo+Pj4+Pj4+PiB0aGVtIGZhbGxpbmcgaW50byBjb2hlcmVuY3kgdHJhcHMgYnkgZm9y Y2luZyB0aGVtIHRvIHVzZSB0aGUgcmlnaHQKPj4+Pj4+Pj4gZHJpdmVyIHRvIGhhbmRsZSB0aGUg b2JqZWN0LCBhbmQgaGF2ZSB0byBjb25zaWRlciB0aGUgYWRkaXRpb25hbCBpb2N0bHMKPj4+Pj4+ Pj4gdGhhdCBnbyBhbG9uZyB3aXRoIHRoYXQgYWNjZXNzLgo+Pj4+Pj4+IFllcywgQ2hyaXMgaXMg cmlnaHQuIE1hcHBpbmcgRE1BLWJ1ZiB0aHJvdWdoIHRoZSBtbWFwKCkgQVBJcyBvZiBhbiBpbXBv cnRlcgo+Pj4+Pj4+IGlzIGlsbGVnYWwuCj4+Pj4+Pj4KPj4+Pj4+PiBXaGF0IHdlIGNvdWxkIG1h eWJlIHRyeSB0byBkbyBpcyB0byByZWRpcmVjdCB0aGlzIG1tYXAoKSBBUEkgY2FsbCBvbiB0aGUK Pj4+Pj4+PiBpbXBvcnRlciB0byB0aGUgZXhwb3J0ZXIsIGJ1dCBJJ20gcHJldHR5IHN1cmUgdGhh dCB0aGUgZnMgbGF5ZXIgd291bGRuJ3QKPj4+Pj4+PiBsaWtlIHRoYXQgd2l0aG91dCBjaGFuZ2Vz Lgo+Pj4+Pj4gV2UgYWxyZWFkeSBkbyB0aGF0LCB0aGVyZSdzIGEgZnVsbCBoZWxwZXItaWZpZWQg cGF0aCBmcm9tIEkgdGhpbmsgc2htZW0KPj4+Pj4+IGhlbHBlcnMgdGhyb3VnaCBwcmltZSBoZWxw ZXJzIHRvIGZvcndhcmQgdGhpcyBhbGwuIEluY2x1ZGluZyBoYW5kbGluZwo+Pj4+Pj4gYnVmZmVy IG9mZnNldHMgYW5kIGFsbCB0aGUgb3RoZXIgbG9seiBiYWNrJmZvcnRoLgo+Pj4+PiBPaCwgdGhh dCBtb3N0IGxpa2VseSB3b24ndCB3b3JrIGNvcnJlY3RseSB3aXRoIHVucGlubmVkIERNQS1idWZz IGFuZAo+Pj4+PiBuZWVkcyB0byBiZSBhdm9pZGVkLgo+Pj4+Pgo+Pj4+PiBFYWNoIGZpbGUgZGVz Y3JpcHRvciBpcyBhc3NvY2lhdGVkIHdpdGggYW4gc3RydWN0IGFkZHJlc3Nfc3BhY2UuIEFuZAo+ Pj4+PiB3aGVuIHlvdSBtbWFwKCkgdGhyb3VnaCB0aGUgaW1wb3J0ZXIgYnkgcmVkaXJlY3Rpbmcg dGhlIHN5c3RlbSBjYWxsIHRvCj4+Pj4+IHRoZSBleHBvcnRlciB5b3UgZW5kIHVwIHdpdGggdGhl IHdyb25nIHN0cnVjdCBhZGRyZXNzX3NwYWNlIGluIHlvdXIgVk1BLgo+Pj4+Pgo+Pj4+PiBUaGF0 IGluIHR1cm4gY2FuIGdvIHVwIGVhc2lseSBpbiBmbGFtZXMgd2hlbiB0aGUgZXhwb3J0ZXIgdHJp ZXMgdG8KPj4+Pj4gaW52YWxpZGF0ZSB0aGUgQ1BVIG1hcHBpbmdzIGZvciBpdHMgRE1BLWJ1ZiB3 aGlsZSBtb3ZpbmcgaXQuCj4+Pj4+Cj4+Pj4+IFdoZXJlIGFyZSB3ZSBkb2luZyB0aGlzPyBNeSBs YXN0IHN0YXR1cyB3YXMgdGhhdCB0aGlzIGlzIGZvcmJpZGRlbi4KPj4+PiBIbSBJIHRob3VnaHQg d2UncmUgZG9pbmcgYWxsIHRoYXQgYWxyZWFkeSwgYnV0IGxvb2tpbmcgYXQgdGhlIGNvZGUKPj4+ PiBhZ2FpbiB3ZSdyZSBvbmx5IGRvaW5nIHRoaXMgd2hlbiBvcGVuaW5nIGEgbmV3IGRybSBmZCBv ciBkbWEtYnVmIGZkLgo+Pj4+IFNvIHRoZSByaWdodCBmaWxlLT5mX21hcHBpbmcgaXMgYWx3YXlz IHNldCBhdCBmaWxlIGNyZWF0aW9uIHRpbWUuCj4+Pj4KPj4+PiBBbmQgd2UgaW5kZWVkIGRvbid0 IGZyb2IgdGhpcyBtb3JlIHdoZW4gZ29pbmcgYW5vdGhlciBpbmRpcmVjdGlvbiAuLi4KPj4+PiBN YXliZSB3ZSBzY3Jld2VkIHVwIHNvbWV0aGluZyBzb21ld2hlcmUgOi0vCj4+Pj4KPj4+PiBBbHNv IEkgdGhvdWdodCB0aGUgbWFwcGluZyBpcyBvbmx5IHRha2VuIGFmdGVyIHRoZSB2bWEgaXMgaW5z dGF0aWF0ZWQsCj4+Pj4gb3RoZXJ3aXNlIHRoZSB0cmlja3Mgd2UncmUgcGxheWluZyB3aXRoIGRt YS1idWYgYWxyZWFkeSB3b3VsZG4ndCB3b3JrOgo+Pj4+IGRtYS1idWYgaGFzIHRoZSBidWZmZXIg YWx3YXlzIGF0IG9mZnNldCAwLCB3aGVyZWFzIGdlbSBkcm1fZmQgbW1hcCBoYXMKPj4+PiBpdCBz b21ld2hlcmUgZWxzZS4gV2UgYWxyZWFkeSBhZGp1c3Qgdm1hLT52bV9wZ29mZiwgc28gSSdtIHdv bmRlcmluZwo+Pj4+IHdoZXRoZXIgd2UgY291bGQgYWRqdXN0IHZtX2ZpbGUgdG9vLiBPciBpcyB0 aGF0IHRoZSB0aGluZyB0aGF0J3MKPj4+PiBmb3JiaWRkZW4/Cj4+PiBZZXMsIGV4YWN0bHkuIE1v ZGlmeWluZyB2bV9wZ29mZiBpcyBoYXJtbGVzcywgdG9ucyBvZiBjb2RlIGRvZXMgdGhhdC4KPj4+ Cj4+PiBCdXQgY2hhbmdpbmcgdm1hLT52bV9maWxlLCB0aGF0J3Mgc29tZXRoaW5nIEkgaGF2ZW4n dCBzZWVuIGJlZm9yZSBhbmQKPj4+IG1vc3QgbGlrZWx5IGNvdWxkIGJsb3cgdXAgYmFkbHkuCj4+ IE9rLCBJIHJlYWQgdGhlIHNobWVtIGhlbHBlcnMgYWdhaW4sIEkgdGhpbmsgdGhvc2UgYXJlIHRo ZSBvbmx5IG9uZXMKPj4gd2hpY2ggZG8gdGhlIGltcG9ydGVyIG1tYXAgLT4gZG1hX2J1Zl9tbWFw KCkgZm9yd2FyZGluZywgYW5kIGhlbmNlCj4+IGJyZWFrIHN0dWZmIGFsbCBhcm91bmQgaGVyZS4K Pj4KPj4gVGhleSBhbHNvIHJlbW92ZSB0aGUgdm1hLT52bV9wZ29mZiBvZmZzZXQsIHdoaWNoIG1l YW5zCj4+IHVubWFwX21hcHBpbmdfcmFuZ2Ugd29udCB3b3JrIGFueXdheS4gSSBndWVzcyBmb3Ig ZHJpdmVycyB3aGljaCB1c2UKPj4gc2htZW0gaGVscGVycyB0aGUgaGFyZCBhc3N1bXB0aW9uIGlz IHRoYXQgYSkgY2FuJ3QgdXNlIHAycCBkbWEgYW5kIGIpCj4+IHBpbiBldmVyeXRoaW5nIGludG8g c3lzdGVtIG1lbW9yeS4KPj4KPj4gU28gbm90IGEgcHJvYmxlbS4gQnV0IHNvbWV0aGluZyB0byBr ZWVwIGluIG1pbmQuIEknbGwgdHJ5IHRvIGRvIGEKPj4ga2VybmVsZG9jIHBhdGNoIHRvIG5vdGUg dGhpcyBzb21ld2hlcmUuIGJ0dyBvbiB0aGF0LCBkaWQgdGhlCj4+IHRpbWVsaW5lL3N5bmNvYmog ZG9jdW1lbnRhdGlvbiBwYXRjaCBsYW5kIGJ5IG5vdz8gSnVzdCB0cnlpbmcgdG8gbWFrZQo+PiBz dXJlIHRoYXQgZG9lc24ndCBnZXQgbG9zdCBmb3IgYW5vdGhlciBmZXcgbW9udGhzIG9yIHNvIDot Lwo+IE9rLCBzbyBtYXliZSBpdCBpcyBhIHByb2JsZW0uIEJlY2F1c2UgdGhlcmUgaXMgYSBkcm1f Z2VtX3NobWVtX3B1cmdlKCkKPiB3aGljaCB1c2VzIHVubWFwX21hcHBpbmdfcmFuZ2UgdW5kZXJu ZWF0aCwgYW5kIHRoYXQncyB1c2VkIGJ5Cj4gcGFuZnJvc3QuIEFuZCBwYW5mcm9zdCBhbHNvIHVz ZXMgdGhlIG1tYXAgaGVscGVyLiBLaW5kYSB3b25kZXJpbmcKPiB3aGV0aGVyIHdlIGJyb2tlIHNv bWUgc3R1ZmYgaGVyZSwgb3Igd2hldGhlciB0aGUgcmV2ZXJzZSBtYXAgaXMKPiBpbnN0YWxsZWQg YmVmb3JlIHdlIHRvdWNoIHZtYS0+dm1fcGdvZmYuCgpJIHRoaW5rIHRoZSBrZXkgcHJvYmxlbSBo ZXJlIGlzIHRoYXQgdW5tYXBfbWFwcGluZ19yYW5nZSgpIGRvZXNuJ3QgYmxvdyAKdXAgaW1tZWRp YXRlbHkgd2hlbiB0aGlzIGlzIHdyb25nLgoKRS5nLiB3ZSBqdXN0IGhhdmUgYSBzdGFsZSBDUFUg cGFnZSB0YWJsZSBlbnRyeSB3aGljaCBhbGxvd3MgdXNlcnNwYWNlIHRvIAp3cml0ZSB0byBmcmVl ZCB1cCBtZW1vcnksIGJ1dCB3ZSBkb24ndCByZWFsbHkgbm90aWNlIHRoYXQgaW1tZWRpYXRlbHku Li4uCgpNYXliZSB3ZSBzaG91bGQgc3RvcCBhbGxvd2luZyB0byBtbWFwKCkgRE1BLWJ1ZiB0aHJv dWdoIHRoZSBpbXBvcnRlciAKZmlsZSBkZXNjcmlwdG9yIGFsdG9nZXRoZXIgYW5kIG9ubHkgYWxs b3cgbWFwcGluZyBpdCB0aHJvdWdoIGl0cyBvd24gZmQgCm9yIHRoZSBleHBvcnRlci4KCkNocmlz dGlhbi4KCj4gcGFuZnJvc3QgZm9sa3MsIGRvZXMgcGFuZnJvc3QgcHVyZ2VkIGJ1ZmZlciBoYW5k bGluZyBvZiBtbWFwIHN0aWxsCj4gd29yayBjb3JyZWN0bHk/IERvIHlvdSBoYXZlIHNvbWUga2lu ZCBvZiBpZ3Qgb3Igc2ltaWxhciBmb3IgdGhpcz8KPgo+IENoZWVycywgRGFuaWVsCj4KPj4gQ2hl ZXJzLCBEYW5pZWwKPj4KPj4+IENocmlzdGlhbi4KPj4+Cj4+Pj4gLURhbmllbAo+Pj4+Cj4+Pj4+ IENocmlzdGlhbi4KPj4+Pj4KPj4+Pj4+IE9mIGNvdXJzZSB0aGVyZSdzIHN0aWxsIHRoZSBwcm9i bGVtIHRoYXQgbWFueSBkcml2ZXJzIGRvbid0IGZvcndhcmQgdGhlCj4+Pj4+PiBjYWNoZSBjb2hl cmVuY3kgY2FsbHMgZm9yIGJlZ2luL2VuZCBjcHUgYWNjZXNzLCBzbyBpbiBhIGJ1bmNoIG9mIGNh c2VzCj4+Pj4+PiB5b3UnbGwgY2FjaGUgY2FjaGVsaW5lIGRpcnQgc291cC4gQnV0IHRoYXQncyBr aW5kYSBzdGFuZGFyZCBwcm9jZWR1cmUgZm9yCj4+Pj4+PiBkbWEtYnVmIDotUAo+Pj4+Pj4KPj4+ Pj4+IEJ1dCB5ZWFoIHRyeWluZyB0byBoYW5kbGUgdGhlIG1tYXAgYXMgYW4gaW1wb3J0ZXIsIGJ5 cGFzc2luZyB0aGUgZXhwb3J0Ogo+Pj4+Pj4gbm9wZS4gVGhlIG9uZSBleGNlcHRpb24gaXMgaWYg eW91IGhhdmUgc29tZSBraW5kIG9mIGZhbmN5IGdhcnQgd2l0aAo+Pj4+Pj4gY3B1LXZpc2libGUg cGNpIGJhciAobGlrZSBhdCBsZWFzdCBpbnRlZ3JhdGVkIGludGVsIGdwdXMgaGF2ZSkuIEJ1dCBp bgo+Pj4+Pj4gdGhhdCBjYXNlIHRoZSBtbWFwIHZlcnkgbXVjaCBsb29rcyZhY3RzIGxpa2UgZGV2 aWNlIGFjY2VzcyBpbiBldmVyeSB3YXkuCj4+Pj4+Pgo+Pj4+Pj4gQ2hlZXJzLCBEYW5pZWwKPj4+ Pj4+Cj4+Pj4+Pj4gUmVnYXJkcywKPj4+Pj4+PiBDaHJpc3RpYW4uCj4+Pj4+Pj4KPj4+Pj4+Pgo+ Pj4+Pj4+PiAtQ2hyaXMKPj4KPj4gLS0KPj4gRGFuaWVsIFZldHRlcgo+PiBTb2Z0d2FyZSBFbmdp bmVlciwgSW50ZWwgQ29ycG9yYXRpb24KPj4gaHR0cHM6Ly9uYW0xMS5zYWZlbGlua3MucHJvdGVj dGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHAlM0ElMkYlMkZibG9nLmZmd2xsLmNoJTJGJmFtcDtk YXRhPTAyJTdDMDElN0NjaHJpc3RpYW4ua29lbmlnJTQwYW1kLmNvbSU3Q2E0NDI5Y2YzNjEwMjQ4 YjExMjJmMDhkODIzNWFjMzJhJTdDM2RkODk2MWZlNDg4NGU2MDhlMTFhODJkOTk0ZTE4M2QlN0Mw JTdDMCU3QzYzNzI5ODIyMDA0MTg3OTIxOSZhbXA7c2RhdGE9RG9OcFRXdHVLQWZpd3FVZFl3N0lO aGFqaEgxcnZ6U25jRGl2WFdrdiUyRkRJJTNEJmFtcDtyZXNlcnZlZD0wCj4KPgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcg bGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==