From owner-svn-ports-all@freebsd.org Thu Apr 20 17:53:51 2017 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DB7B1D48A71; Thu, 20 Apr 2017 17:53:51 +0000 (UTC) (envelope-from rezny@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B3A8EAE0; Thu, 20 Apr 2017 17:53:51 +0000 (UTC) (envelope-from rezny@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1406) id C611036F; Thu, 20 Apr 2017 17:53:50 +0000 (UTC) From: Matthew Rezny To: Alexey Dokuchaev Cc: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: Re: svn commit: r433902 - head Date: Thu, 20 Apr 2017 19:53:50 +0200 Message-ID: <1855734.ja2yFjLJe3@workstation.reztek> Organization: FreeBSD User-Agent: KMail/4.14.10 (FreeBSD/11.0-STABLE; KDE/4.14.30; amd64; ; ) In-Reply-To: <20170420170837.GA10533@FreeBSD.org> References: <201702111903.v1BJ3sMj021042@repo.freebsd.org> <20170420170837.GA10533@FreeBSD.org> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Apr 2017 17:53:52 -0000 On Thursday 20 April 2017 17:08:37 Alexey Dokuchaev wrote: > On Sat, Feb 11, 2017 at 07:03:54PM +0000, Matthew Rezny wrote: > > New Revision: 433902 > > URL: https://svnweb.freebsd.org/changeset/ports/433902 > > > > Log: > > Add UPDATING entry for Xorg server 1.18.4 > > > > Modified: head/UPDATING > > ... > > +20170211: > > + AFFECTS: users of x11-server/xorg-server > > + AUTHOR: rezny@FreeBSD.org > > + > > + Xorg server has been updated to 1.18.4 and autodetection has changed. > > I've just had a chance to upgrade X.org/Mesa ports on my fresh -CURRENT > laptop, and noticed that X.org server indeed won't startup unless I load > radeonkms.ko module by hand. I understand that this entry specifically > > talks about it, but would like to clarify a few things if you don't mind: > > + The order in which drivers are now attempted is: > > + 1) vendor/model specific driver according to PCI IDs > > + 2) generic modesetting driver which requires a drm driver with KMS > > + 3) scfb, the generic framebuffer driver > > + 4) vesa (only if arch is x86) > > Can you recall what was the previous order? > Old Order: vendor specific according to PCI ID, fbdev, vesa Since fbdev is only for Linux framebuffer, and it's the #else after a specific case for Net/OpenBSD which use wsfb, I inserted scfb for us and made fbdev only for Linux. History note: scfb forked from wsfb which forked from fbdev. Modesetting was behind an #ifdef linux. I enabled it for us as well, though it could probably be changed to be enabled for all BSDs upstream. See x11-servers/xorg-server/files/patch-hw_xfree86_common_xf86AutoConfig.c > > + This should minimize the need for xorg.conf files. > > Didn't have one for a quite a few years now, didn't know it was still > needed. ;-) > > > + i.e. kld_list="i915kms.ko", to ensure correct functionality. Although > > + the vendor drivers may attempt to load the correct drm driver, which > > + does not always work, the modesetting driver assumes the required KMS > > Any ideas why it does not work now with AMD A8 APU (Aruba, NI)? I don't > mind loading it by hand or via kld_list, but still want to know what had > broken automatic loading in my case (as it worked fine before). > Do you have xf86-video-ati installed? That is what loads radeonkms.ko. You should only need to manually load it if using modesetting (ati is not installed). > > + driver is already loaded and will fail if there is none. The > > modesetting > > + driver is now recommended as an alternative to the Intel driver; the > > + performance is comparable and stability is better with modesetting. The > > + ATI driver continues to offer better performance than modesetting. > > Can you elaborate a bit on the last sentense (my context is solely AMD/ATI, > I don't own or care about Intel hardware). Thanks, > The modesetting driver is meant to be a generic DDX that uses the ksm drm interface without any vendor specifics. Think of it like scfb sitting on the framebuffer, except it sits on drm so it can do OpenGL and actually uses that exclusively for accelerated rendering (Glamor for 2D). That is nice to have in general and could be a good improvement for some Intel GPUs since UXA and SNA aren't exactly stable and Intel hasn't done a release in years. Radeon (ATI) has good EXA support for everything up through r600. Radeon r600 and up have no 2D hardware, so EXA on r600 uses 3D pipeline, and for radeonSI there is no EXA, instead Glamor is the default. Recently, Glamor was made default for r600 as well since the performance is generally on par with EXA, and Glamor is an option for all Radeons down through r300. So, the built-in modesetting DDX offers nothing over the ATI DDX since both can use Glamor for 2D, but ATI DDX does have advantages in the form of EXA support (better for older hardware) and better performance through hardware specific knowledge. Testing on a multi-monitor setup, under both KDE4's kwin and Enlightenment21, with a mixed load of video playback and various games both full-screen and windowed (including multiple simultaneous) revealed performance is similar in terms of framerate, sometimes generic modesetting slightly lagging, while ATI performs better visually with noticeably less tearing. TearFree doesn't completely work as advertised and does negatively impact performance, but even without there is little tearing overall, whereas with generic modesetting DDX there is persistent diagonal tearing plainly visible when doing something as simple as scrolling a maximized text editor or browser window. TearFree would probably perform better with DRI3 but I haven't tested on DRM-next myself. > ./danfe