Bug 1120254

Summary: Xorg cannot run during install and after, z390 + i9-9900k + UHD 630 graphics
Product: [openSUSE] openSUSE Tumbleweed Reporter: David Rosky <dave.rosky>
Component: KernelAssignee: E-mail List <kernel-maintainers>
Status: RESOLVED UPSTREAM QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: mrmazda
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Factory   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Xorg log from running "startx" after install
Xorg log from running "startx" after uninstalling xf86-video-vesa
Xorg log file with drm-tip kernel

Description David Rosky 2018-12-22 01:19:27 UTC
Created attachment 793295 [details]
Xorg log from running "startx" after install

Hello,

I Tried to install the latest Tumbleweed DVD (14/12/2018 build).

The graphic installer failed to start, so installation fell back to text mode.

I continued with the text mode installation.  Since I was now expecting possible trouble with graphics, I chose booting to a text console instead of GDM.

After booting the installed system, "startx" also fails.  I have attached the Xorg log for this case.

If I uninstall the xf86-video-vesa driver, then Xorg does finally start in a framebuffer, but runs very slow.  I have attached the Xorg log for this case as well (with "no_vesa" appended to the filename).

Some additional information that may be useful:

1. Downgrading to an older kernel (4.18) did not help.
2. Upgrading to kernel 4.20-rc6 from the kernel:HEAD repository did not help.

3. An install of Arch behaved very similarly on this system, with startx failing in a similar way.  The following Arch bug report may be useful, being from a nearly identical system and nearly identical kernels:

https://bbs.archlinux.org/viewtopic.php?id=242465

For the OP, the problem was solved by using the following drm development kernel:

https://github.com/freedesktop/drm-tip

Since there is an AUR packagebuild for that kernel, which makes it easy to try, I tried it on this system and it also worked here -- Arch was then able to run X with full Intel drm acceleration. Due to time constraints, I have not yet tried to compile that kernel for Tumbleweed.

Lastly, I tried Ubuntu 18.10 and it behaved similarly, with Xorg falling back to a framebuffer.  The Ubuntu 19.04 BETA liveCD, however, works fine out of the box -- Xorg runs with drm and full acceleration, with a 4.18.0 kernel.

Thanks.
Comment 1 David Rosky 2018-12-22 01:23:07 UTC
Created attachment 793296 [details]
Xorg log from running "startx" after uninstalling xf86-video-vesa
Comment 2 Felix Miata 2018-12-22 07:08:54 UTC
Is kernel-firmware installed? Its absence is a common reason for (EE) open /dev/dri/card0: No such file or directory in your log. i9-9900k Coffee Lake is pretty new. Maybe its drm component isn't yet in the kernels tried or available firmware?
Comment 3 David Rosky 2018-12-22 08:19:17 UTC
Hi Felix,
Yes, the kernel-firmware package was installed.

I'm attempting to compile the "drm-tip" kernel since that got things working on Arch.  There is no SRC package for this, nor anything as convenient as an Arch AUR packagebuild, so I'm trying to go from Opensuse kernel build howtos on the internet.  They are all quite old and almost all of them refer to an 'rpm' target (make rpm), but I get an error message that the 'rpm' target does not exist.

I don't have much kernel building experience so I'm not sure how to proceed.  Do you know of a howto on building a generic (vanilla) kernel from source and ending up with an installable RPM?

Thanks..
Comment 4 David Rosky 2018-12-25 04:43:49 UTC
Created attachment 793335 [details]
Xorg log file with drm-tip kernel
Comment 5 David Rosky 2018-12-25 04:44:49 UTC
OK, I made some progress, but not yet all the way there.

After more searching, I found a mailing list entry that is more recent than the much older kernel-compiling howtos on the web.

For the benefit of anyone else who might run in to this, the build target for getting an RPM is now "binrpm-pkg" and not "rpm", though some config changes are necessary to keep debug information out of the RPM.  Here is the mailing list post with the details:

https://lists.opensuse.org/opensuse/2017-06/msg00277.html

Back to the problem, after compiling and installing the drm-tip kernel (which is based on 4.20-rc7), the card is now found as a drm device, X runs with the modesetting driver, and there is 2d acceleration, but still no hardware 3d.  Also, the presence of the vesa driver no longer causes X to fail.

Attached is the new Xorg.0.log (Xorg.0.log_drm_tip).  The only errors are the following:

[   120.544] (EE) Failed to load module "intel" (module does not exist, 0)
[   120.592] (EE) modeset(0): glamor initialization failed

Is it possible that the version of Xorg shipped with Tumbleweed still needs the xf86-video-intel module despite that module being deprecated?  Or is the problem with "glamor" (I'm not sure what that is).

Happy Holidays...

Thanks
Comment 6 David Rosky 2018-12-25 05:31:32 UTC
I installed xf86-driver-intel.  The driver loads and now there are no errors in Xorg.0.log except one for AIGLX, but 3d acceleration still does not work.

The error reported by 3d applications is:

pci id for fd 4: 8086:3e98, driver (null)
i965_dri.so does not support the 0x3e98 PCI ID.
libGL error: failed to create dri screen
libGL error: failed to load driver: i965

Some posts suggested adding i915.preliminary_hw_support=1, but this did not help.

I also updated the kernel-firmware package to the latest in kernel:HEAD, which also didn't help.

I'm not sure if this is a kernel problem at this point, or something else.

Thanks,

-D
Comment 7 David Rosky 2018-12-25 08:03:18 UTC
Update:  I have 3d acceleration working now.

I did a general update and one of the updates, probably to Mesa-dri, fixed the problem with i965_dri not recognizing the PCI device.

I verified, however, that X still does not work with the stock Tumbleweed kernel. I still need to use the drm-tip kernel.

I also still need to use the xf86-video-intel driver which was not installed by the Tumbleweed installer.

I haven't changed the bug status, it should be the decision of the OpenSuSE kernel maintainers to decide whether the kernel portion of this should be considered resolved, given that only the drm-tip seems to work at the moment.  I'll be happy to test any official SuSE kernel builds on this hardware.

Thanks,
-D
Comment 8 David Rosky 2018-12-28 04:58:33 UTC
I'll go ahead and mark this as resolved.  

The upstream fix in drm-tip works and will eventually make it into SuSE released kernels for TW.

-D