From owner-freebsd-x11@freebsd.org Mon Apr 20 21:06:40 2020 Return-Path: Delivered-To: freebsd-x11@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9E08A2B045D; Mon, 20 Apr 2020 21:06:40 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 495fQ83ljmz47MJ; Mon, 20 Apr 2020 21:06:40 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1354) id 5D6DD6291; Mon, 20 Apr 2020 21:06:40 +0000 (UTC) From: Jan Beich To: Frederic Chardon Cc: Niclas Zeising , freebsd-x11@freebsd.org, FreeBSD Questions Mailing List Subject: Re: Wayland on FreeBSD References: <6c7abdcf-aeef-4af4-b8f4-9d7fd0e45cf0@localhost> <7fba319c-c012-8893-3ce0-e2a166c38d2d@daemonic.se> Date: Mon, 20 Apr 2020 23:06:35 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Apr 2020 21:06:40 -0000 Frederic Chardon writes: > Le lun. 20 avr. 2020 =C3=A0 20:54, Jan Beich a =C3= =A9crit : > >> >> Frederic Chardon writes: >> >> > Le lun. 20 avr. 2020 =C3=A0 15:20, Jan Beich a = =C3=A9crit : >> > >> >> >> >> Frederic Chardon writes: >> >> >> >> > Le lun. 20 avr. 2020 =C3=A0 12:20, Niclas Zeising >> >> > a =C3=A9crit : >> >> > >> >> >> >> >> >> On 2020-04-20 12:07, Greg V wrote: >> >> >> > Apr 20, 2020 12:56:35 PM Frederic Chardon : >> >> >> > >> >> >> >> Le dim. 19 avr. 2020 =C3=A0 13:50, Jan Beich a =C3=A9crit : >> >> >> >> >> >> >> >>> >> >> >> >>> >> >> >> >>> I'm using Sway myself primarily with X11 applications. For exa= mple, >> >> >> >>> "vblank_mode=3D0 glxgears" shows 3x more FPS than on real Xorg= server. ;) >> >> >> >>> >> >> >> >> >> >> >> >> I decided to give it a try, is hardware acceleration supposed t= o work? >> >> >> >> glxgears gives 10x less fps than with X, and 3D is incredibly >> >> >> >> sluggish. >> >> >> >> eglinfo output that leads me to believe it is not: >> >> >> >> GBM platform: >> >> >> >> i965_dri.so does not support the 0xffffffff PCI ID. >> >> >> >> >> >> >> >> It is with sway, -current from yesterday, intel HD4000 iGPU (Iv= ybridge i5-3320M) >> >> >> >> no difference between drm-devel-kmod or drm-current-kmod. [...] >> >> > With or without LIBGL_DRI3_ENABLE=3D1 in the environment the result= is >> >> > the same. I use official packages, updated yesterday. >> >> > >> >> > The problem I face might be due to permission issue. ktrace shows t= his: >> >> > 28047 eglinfo CALL openat(AT_FDCWD,0x7fffffffc820,0x100002) >> >> > 28047 eglinfo NAMI "/dev/dri/card0" >> >> > 28047 eglinfo RET openat 3 >> >> > /..../ >> >> > 28047 eglinfo CALL ioctl(0x3,0xc0106446,0x7fffffffbc70) >> >> > 28047 eglinfo RET ioctl -1 errno 13 Permission denied [...] >> >> Try starting Sway via "ktrace -i" or replace Xwayland binary with a >> wrapper (see below) that starts it via ktrace. Tracing glxgears is too >> late as Mesa will simply give up if DRI3 is not initialized. [...] > > The trace shows usage of llvmpipe after the failed ioctl on > /dev/dri/card0, so as I understand the lack of hardware acceleration > concerns only Xwayland, whereas wayland itself is accelerated ? Yep. Check which ioctls fail then try to reproduce outside of Mesa or hardcode the result. Overriding PCI ID via INTEL_DEVID_OVERRIDE is unlikely to help e.g., https://lists.freebsd.org/pipermail/freebsd-x11/2019-January/022551.html If you still have no clue try playing with sysctls under compat.linuxkpi via /boot/loader.conf.