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=-1.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_PASS,URIBL_BLOCKED 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 DADB8C28CF6 for ; Fri, 3 Aug 2018 12:25:23 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 955A22175E for ; Fri, 3 Aug 2018 12:25:23 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="PqDJxrGH" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 955A22175E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729228AbeHCOV1 (ORCPT ); Fri, 3 Aug 2018 10:21:27 -0400 Received: from mail-wr1-f66.google.com ([209.85.221.66]:39745 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727540AbeHCOV1 (ORCPT ); Fri, 3 Aug 2018 10:21:27 -0400 Received: by mail-wr1-f66.google.com with SMTP id h10-v6so5246870wre.6 for ; Fri, 03 Aug 2018 05:25:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=XuLan1+ws482brESSvG7ZrrRm1JYBisurpGscsrLpuo=; b=PqDJxrGHQmx7bohffki4fiHEBwFKbEa1T+4Du7KB7TAt5oH5QKf/PQvOwbbLWRGDl+ t+6+lJlkAUC/hGx4EQAqvQwZ0i2Spb+oLd548frpxkH42/2s8I8I4YQGns1Z3lFZxVx+ 4nwRfgHHzUw7SM2/D1o69mQa/58VUnw2Vw+uEQuSygVkIuY33UBHaTgaC5E/CqRLmPIb qO0A/hnaS7zSHIQJngMOOsMEvz85VIYq4pJSM0UOBOwxfbCLDVA66toKzoB37egZer+W yDr0/0prJnt/9Z5yJssVAFuxNbP5ROMpLTf+crn2Jutw5iC+U/PNG74mHYLynJczHy1m +IkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=XuLan1+ws482brESSvG7ZrrRm1JYBisurpGscsrLpuo=; b=PBQyBj3vQ83siT4g/vGuthb7SF0NfvFA2KrkjjBkl3GQFuuyM+JL6BoqI/XPrW0KHh fxRxzs46JbSm22bRYQSK1zG2U10b17YFDZP1DmEoaAQCXpJtmLyJRXiIoDc6cFsfFDLE tWND4FRjO6LQEoo4hmw8ngYQ+e1MsIMjWActdWX+EzXrzmJA+I+9i8Pq4371MDgcvZmC idldp4Shew7t3Q5gM+aulJCCLK0Cw+Iax0MW8jrOwacAF8W57B+espdfr1YB58CCpwfR bx5K88WH3RCTUzCQeE27jCd+7LdDXmAXDBEiiMaNHO0QWD3uGhYQeJe1wzrPh0cEbdQ0 wfBw== X-Gm-Message-State: AOUpUlF4TcS1xvA4TMSdu1+rwqFihdNxLbcYd1pgHqm3F/7gf0QA4kRv MFRZiXSuNE0qsY7MIdreQn+QpNp2VeFa7VgZ/Jw= X-Google-Smtp-Source: AAOMgpcnYKctTxD8giuyZe8f9VjNHbEkDl7myEYm9jE7nn/gyriHZeYLI2RoCU2cjMa6iQBw6a6PAhOJFkIyz/w9utI= X-Received: by 2002:adf:eac8:: with SMTP id o8-v6mr2293150wrn.150.1533299119844; Fri, 03 Aug 2018 05:25:19 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a1c:178a:0:0:0:0:0 with HTTP; Fri, 3 Aug 2018 05:25:19 -0700 (PDT) In-Reply-To: <20180724082213.25677-1-robert.foss@collabora.com> References: <20180724082213.25677-1-robert.foss@collabora.com> From: Emil Velikov Date: Fri, 3 Aug 2018 13:25:19 +0100 Message-ID: Subject: Re: [RFC] drm: Allow DRM_IOCTL_MODE_MAP_DUMB for render nodes To: Robert Foss Cc: Gustavo Padovan , Maarten Lankhorst , Sean Paul , David Airlie , ML dri-devel , "Linux-Kernel@Vger. Kernel. Org" , Tomasz Figa , Rob Herring , Eric Engestrom , Brian Paul , Tomeu Vizoso , Nicolas Norvez Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi all, Sharing some ideas on the topic. Personally I'm neither for, nor against this patch. On 24 July 2018 at 09:22, Robert Foss wrote: > From: Tomasz Figa > > There is no particular reason to prevent userspace for using this IOCTL, > considering that it already has access to other, platform-specific > IOCTLs. This patch makes is possible to have the same userspace code > work regardless on the underlying platform, which significantly > simplifies the stack. > > Signed-off-by: Tomasz Figa > Reviewed-by: Zach Reizner > Signed-off-by: Nicolas Norvez > Reviewed-by: Tomasz Figa > Signed-off-by: Robert Foss > --- > > I've been looking into enabling a kms_swrast based driver for mesa on > the Android platform[1]. > > But have come up against the issue of dumb buffer related ioctls below > not being flagged with DRM_RENDER_ALLOW. > > DRM_IOCTL_MODE_CREATE_DUMB > DRM_IOCTL_MODE_MAP_DUMB > > To be more precise, I've been seeing a failure due to DRM_IOCTL_MODE_MAP_DUMB > not being allowed for /dev/dri/renderD* nodes, and used in mesa > kms_sw_displaytarget_map(). > > > As I understand it the DRM_RENDER_ALLOW flag being unset is a very intentional > restriction placed on dumb buffers in order to minimize its use. > But as far as alternative solutions for software renderers there seems to only > be VGEM and mmap()-ing DMABUFs. > > While it would be convenient from the point of view of software renderers if > dumb buffers had more promiscuous permissions, it may be a hard sell upstream. > > If dumb buffers aren't the way forward, what is? VGEM? Or are there any other > preferable ways? > The description of VGEM says "... as used by Mesa's software renderer for enhanced performance." Although that hasn't been the case really, since we're opening an arbitrary GPU node with kms_swrast. I think we should fix that. On top of that we could also use the card node, which will remove the need for this patch. Yet again, there may be reasonable usecases where one needs the render node to support the dumb buffer ioctls. HTH Emil From mboxrd@z Thu Jan 1 00:00:00 1970 From: Emil Velikov Subject: Re: [RFC] drm: Allow DRM_IOCTL_MODE_MAP_DUMB for render nodes Date: Fri, 3 Aug 2018 13:25:19 +0100 Message-ID: References: <20180724082213.25677-1-robert.foss@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2C2786E700 for ; Fri, 3 Aug 2018 12:25:21 +0000 (UTC) Received: by mail-wr1-x444.google.com with SMTP id r16-v6so5225435wrt.11 for ; Fri, 03 Aug 2018 05:25:21 -0700 (PDT) In-Reply-To: <20180724082213.25677-1-robert.foss@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Robert Foss Cc: Tomeu Vizoso , Nicolas Norvez , David Airlie , "Linux-Kernel@Vger. Kernel. Org" , ML dri-devel , Tomasz Figa , Eric Engestrom , Brian Paul List-Id: dri-devel@lists.freedesktop.org SGkgYWxsLAoKU2hhcmluZyBzb21lIGlkZWFzIG9uIHRoZSB0b3BpYy4gUGVyc29uYWxseSBJJ20g bmVpdGhlciBmb3IsIG5vcgphZ2FpbnN0IHRoaXMgcGF0Y2guCgpPbiAyNCBKdWx5IDIwMTggYXQg MDk6MjIsIFJvYmVydCBGb3NzIDxyb2JlcnQuZm9zc0Bjb2xsYWJvcmEuY29tPiB3cm90ZToKPiBG cm9tOiBUb21hc3ogRmlnYSA8dGZpZ2FAY2hyb21pdW0ub3JnPgo+Cj4gVGhlcmUgaXMgbm8gcGFy dGljdWxhciByZWFzb24gdG8gcHJldmVudCB1c2Vyc3BhY2UgZm9yIHVzaW5nIHRoaXMgSU9DVEws Cj4gY29uc2lkZXJpbmcgdGhhdCBpdCBhbHJlYWR5IGhhcyBhY2Nlc3MgdG8gb3RoZXIsIHBsYXRm b3JtLXNwZWNpZmljCj4gSU9DVExzLiBUaGlzIHBhdGNoIG1ha2VzIGlzIHBvc3NpYmxlIHRvIGhh dmUgdGhlIHNhbWUgdXNlcnNwYWNlIGNvZGUKPiB3b3JrIHJlZ2FyZGxlc3Mgb24gdGhlIHVuZGVy bHlpbmcgcGxhdGZvcm0sIHdoaWNoIHNpZ25pZmljYW50bHkKPiBzaW1wbGlmaWVzIHRoZSBzdGFj ay4KPgo+IFNpZ25lZC1vZmYtYnk6IFRvbWFzeiBGaWdhIDx0ZmlnYUBjaHJvbWl1bS5vcmc+Cj4g UmV2aWV3ZWQtYnk6IFphY2ggUmVpem5lciA8emFjaHJAY2hyb21pdW0ub3JnPgo+IFNpZ25lZC1v ZmYtYnk6IE5pY29sYXMgTm9ydmV6IDxub3J2ZXpAY2hyb21pdW0ub3JnPgo+IFJldmlld2VkLWJ5 OiBUb21hc3ogRmlnYSA8dGZpZ2FAY2hyb21pdW0ub3JnPgo+IFNpZ25lZC1vZmYtYnk6IFJvYmVy dCBGb3NzIDxyb2JlcnQuZm9zc0Bjb2xsYWJvcmEuY29tPgo+IC0tLQo+Cj4gSSd2ZSBiZWVuIGxv b2tpbmcgaW50byBlbmFibGluZyBhIGttc19zd3Jhc3QgYmFzZWQgZHJpdmVyIGZvciBtZXNhIG9u Cj4gdGhlIEFuZHJvaWQgcGxhdGZvcm1bMV0uCj4KPiBCdXQgaGF2ZSBjb21lIHVwIGFnYWluc3Qg dGhlIGlzc3VlIG9mIGR1bWIgYnVmZmVyIHJlbGF0ZWQgaW9jdGxzIGJlbG93Cj4gbm90IGJlaW5n IGZsYWdnZWQgd2l0aCBEUk1fUkVOREVSX0FMTE9XLgo+Cj4gRFJNX0lPQ1RMX01PREVfQ1JFQVRF X0RVTUIKPiBEUk1fSU9DVExfTU9ERV9NQVBfRFVNQgo+Cj4gVG8gYmUgbW9yZSBwcmVjaXNlLCBJ J3ZlIGJlZW4gc2VlaW5nIGEgZmFpbHVyZSBkdWUgdG8gRFJNX0lPQ1RMX01PREVfTUFQX0RVTUIK PiBub3QgYmVpbmcgYWxsb3dlZCBmb3IgL2Rldi9kcmkvcmVuZGVyRCogbm9kZXMsIGFuZCB1c2Vk IGluIG1lc2EKPiBrbXNfc3dfZGlzcGxheXRhcmdldF9tYXAoKS4KPgo+Cj4gQXMgSSB1bmRlcnN0 YW5kIGl0IHRoZSBEUk1fUkVOREVSX0FMTE9XIGZsYWcgYmVpbmcgdW5zZXQgaXMgYSB2ZXJ5IGlu dGVudGlvbmFsCj4gcmVzdHJpY3Rpb24gcGxhY2VkIG9uIGR1bWIgYnVmZmVycyBpbiBvcmRlciB0 byBtaW5pbWl6ZSBpdHMgdXNlLgo+IEJ1dCBhcyBmYXIgYXMgYWx0ZXJuYXRpdmUgc29sdXRpb25z IGZvciBzb2Z0d2FyZSByZW5kZXJlcnMgdGhlcmUgc2VlbXMgdG8gb25seQo+IGJlIFZHRU0gYW5k IG1tYXAoKS1pbmcgRE1BQlVGcy4KPgo+IFdoaWxlIGl0IHdvdWxkIGJlIGNvbnZlbmllbnQgZnJv bSB0aGUgcG9pbnQgb2YgdmlldyBvZiBzb2Z0d2FyZSByZW5kZXJlcnMgaWYKPiBkdW1iIGJ1ZmZl cnMgaGFkIG1vcmUgcHJvbWlzY3VvdXMgcGVybWlzc2lvbnMsIGl0IG1heSBiZSBhIGhhcmQgc2Vs bCB1cHN0cmVhbS4KPgo+IElmIGR1bWIgYnVmZmVycyBhcmVuJ3QgdGhlIHdheSBmb3J3YXJkLCB3 aGF0IGlzPyBWR0VNPyBPciBhcmUgdGhlcmUgYW55IG90aGVyCj4gcHJlZmVyYWJsZSB3YXlzPwo+ ClRoZSBkZXNjcmlwdGlvbiBvZiBWR0VNIHNheXMgIi4uLiBhcyB1c2VkIGJ5IE1lc2EncyBzb2Z0 d2FyZSByZW5kZXJlcgpmb3IgZW5oYW5jZWQgcGVyZm9ybWFuY2UuIgpBbHRob3VnaCB0aGF0IGhh c24ndCBiZWVuIHRoZSBjYXNlIHJlYWxseSwgc2luY2Ugd2UncmUgb3BlbmluZyBhbgphcmJpdHJh cnkgR1BVIG5vZGUgd2l0aCBrbXNfc3dyYXN0LgoKSSB0aGluayB3ZSBzaG91bGQgZml4IHRoYXQu CgpPbiB0b3Agb2YgdGhhdCB3ZSBjb3VsZCBhbHNvIHVzZSB0aGUgY2FyZCBub2RlLCB3aGljaCB3 aWxsIHJlbW92ZSB0aGUKbmVlZCBmb3IgdGhpcyBwYXRjaC4KWWV0IGFnYWluLCB0aGVyZSBtYXkg YmUgcmVhc29uYWJsZSB1c2VjYXNlcyB3aGVyZSBvbmUgbmVlZHMgdGhlIHJlbmRlcgpub2RlIHRv IHN1cHBvcnQgdGhlIGR1bWIgYnVmZmVyIGlvY3Rscy4KCkhUSApFbWlsCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QK ZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=