What RH-like On A Dell XPS 15 (9590)?

Home » CentOS » What RH-like On A Dell XPS 15 (9590)?
CentOS 54 Comments

Hello there,

I’ve just got a Dell XPS 15 (9590) at work and need to set up a stable GNU/Linux system on it. I thought of CentOS7, but.. obviously its kernel can’t run on this hardware.

What would you recommend? Waiting for CentOS8 is not an option unless it’s a question of few weeks. Are there respins of the CentOS7 DVDs w/
more top-recent kernels? I’m know of Fedora 26 or course, and not willing to switch to Ubuntu 16.10 at all.

Regards,

54 thoughts on - What RH-like On A Dell XPS 15 (9590)?

  • Hello Nicolas,

    [snip]

    I would like to do that, but the live CD doesn’t even boot, unknown hardware and that’s the point. I thought I could find a respin of the DVD or Live CD w/ a recent kernel in.

    Regards,

  • Hello Matthew,

    It’s a good question. When I wrote that, I was wondering what do I mean saying “stable”. Provided that it could be a top-recent kernel or a respin, I guess that the stable concept is potentially gone.

    Say, instead of stable, something not rawhide. But I’ll examine all options that do work, so let’s forget about “stable”.

    Regards,

  • wwp wrote:
    Hey, I just tried googling, and I cannot find a 9590, only 9550. You sure of that?

    Oh, and will it boot without UEFI from a flash drive?

    mark

  • In that case — and I freely admit I have some bias here — I highly recommend Fedora. It’s not stable in the sense of strict ABI
    compliance, although we try to minimize disruption within the 13-month life of a release, but it is stable in the “does not crash” sense.


    Matthew Miller

    Fedora Project Leader

  • Hello vychytraly,

    It is as simple as unknown hardware at boot up, it’s a well known issue w/ *Lake hardware (modern hardware) that kernel 3.x cannot handle. CentOS7 has a kernel which is simply not modern, unable to handle lots of computers sold currently.

    That said, there might be a way to boot, but nothing trivial and nothing at all I could find on the Internet, everytime it’s kernel
    4.3/4.10 minimum required.

    Regards,

  • Hello m.roth@5-cent.us,

    It’s simply a typo: 9560. I’ve read of 9550 successful stories, but none of 9560 yet.

    It’s UEFI, I get the boot menu, but it won’t go further.

    Regards,

  • options that do work, so let’s forget about “stable”. recommend Fedora. It’s not stable in the sense of strict ABI
    life of a release, but it is stable in the “does not crash” sense.

  • Hello Matthew,

    Right, I’m currently digging that way, struggling a bit w/ the way I
    write the F26 ISO to a USB flashdrive (I’ll succeed tomorrow, found better howtos to get rid of unetbootin issues).

    Fedora could be stable enough even if not a standard/reference in industry at all (which sticks to RH releases), I would have loved a CentOS because it is way more compliant to my “corporate” needs (LTS), but a Fedora could be do it, if it really does it, at least until CentOS8 is out.

    Regards,

  • Maybe CentOS 7.4 would have backported compatibility for your hardware. I
    had similar issues with Intel GPU not being recognized, which was solved by
    “i915 preliminary hw support enabled” method. Try to have a look on that.

  • https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7-Beta/html/7.4_Release_Notes/new_features_hardware_enablement.html <https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7-Beta/html/7.4_Release_Notes/new_features_hardware_enablement.html>

    Well, the only thing that catches my eye here is the support for newer Intel PCHs.

    Skylake (Purley) servers exist, so I would assume that RHEL would need to support these chipsets.

    Wireless, GPUs etc – that’s something different.

    Of course, there’s always SLES (or SLED, in the OPs case), which has a somewhat more recent kernel, AFAIK – if we’re playing „Anything but Ubuntu“.
    ;-)

    The above beta came out in May. So I’d hazard a guess and say it’ll be late autumn before we see a release and I’d hope for a pre-christmas CentOS 7.4 release….

    Rainer

  • I would go with Fedora or OpenSUSE latest if you want RH like on that hardware. There is nothing that unstable about them other than losing updates and maintenance after 2 years and having to upgrade.

    Another choice is to run Virtualbox on the Windows that shipped with the laptop and run a CentOS 7 virtual guest.

    If you REALLY need RHEL (CentOS) running on the hardware I would return the XPS and get a Lattitude or Precision laptop. They have much better Linux support as they tend to be more stability oriented rather than latest and greatest hardware.

    Mike

  • And, if Ubuntu isn’t pariah, even it’s LTS has a reasonably current kernel. However, the “Debian way” (Debian, Ubuntu, others) is enough different than the “Red Hat way” (RHEL, CentOS, SuSE more or less) that, if it’s important to you, stick with the RPM-based options.

    —– Original Message —

  • I have a Dell XPS 13 (9360) with Fedora 26 installed. Very happy with it.

    UEFI boot from flash drive works out of the box.

    For install I needed to change the drive settings in the BIOS from the default of RAID (what ever that means on a laptop) to AHCI. No need to turn off secure boot.

    If you want to use a DisplayLink USB display adaptor like the D3100
    (commonly sold with this laptop), you might want to checkout https://github.com/displaylink-rpm. This will require either you to turn off secure boot or to sign the displaylink modules after they are installed. Signing is not that hard, but is a extra step that you have to look after.

    Cheers,

    Kal

  • I have an experimental 4.9.x kernel stream for x86_64. Let me see if I
    can create a live-dvd that boots with that kernel and installs.

  • Le 27/07/2017 à 22:24, wwp a écrit :

    This is why I appreciate KDE neon (https://neon.kde.org/) as a “lesser evil” fallback solution on hardware that does not support CentOS. Its base is LTS, hardware support is improved between minor releases. The system is stable (e. g. usable), and its support is way longer than Fedora.

    Niki


    Microlinux – Solutions informatiques durables
    7, place de l’église – 30730 Montpezat Web : http://www.microlinux.fr Mail : info@microlinux.fr Tél. : 04 66 63 10 32

  • Hello Mike,

    As a try, I could install a Fedora 26 – installation and runtime went fine, apparently for everything (cpu, disk, video, wifi, bluetooth, sound..). Bad luck, once back to Windows (it’s a dual boot), the UEFI config lost the F26 entry, I’m good to reinstall and find how to prevent Windows to override the UEFI config. Also digging other directions..

    Regards,

  • Hello Kahlil,

    Thanks!

    I read that elsewhere, that’s what I did too.

    I could install F26 and run it, that will probably be my option if I
    definitely fail w/ CentOS7+whatever and once I solved the UEFI config issue (Windows overrides it everytime).

    I’ll probably use a WD15 Dock, apparently that works out of the box in Linux too, provided that the dock firmware is up-to-date.

    Regards,

  • Hello Johnny,

    Thanks, if I succeed in installing a C7, I’ll make use of it and provide feedback.

    Regards,

  • hmmm .. the live ISO fails to boot .. there is not squashfs module .. let me see if I can fix that.

  • Hello Johnny,

    Where could I get an ISO (once fixed), I only saw RPMs at the link you pasted? Or do I have to assemble myself in some way?

    Regards,

  • Once I get a working ISO that installs, I’ll post a link.

    You would have to set up the experimental repo in /etc/yum.repos.d/ to get kernel updates, and those would be RPM only.

    In fact, I have a live ISO now that installs (in KVM) .. but I still need to make sure this kernel updates correctly from the experimental repo.

    The kernel (and linux-firmware) rpms are unsigned, but should upgrade from the experimental repo for future upgrades and those are signed.

    So, I should have something installable sometime in the next few hours that you can try.

    Thanks, Johnny Hughes

  • OK .. I just pushed this ISO to the master mirror:

    CentOS-7-x86_64-LiveGnome-1707-exp.iso (sha256sum):
    f60d806f513f337acd09c5cf4a2ec3c735ba82519798d07096992916fc4cf271

    Once it makes it to the mirrors, it can be downloaded via this link:

    https://buildlogs.CentOS.org/CentOS/7/isos/x86_64/CentOS-7-x86_64-LiveGnome-1707-exp.iso

    I also tested this on a physical machine (t520 thinkpad) , as well as an install on a KVM VM, and it installs fine both places.

    After install and reboot, add in the experimental.repo file via this link (bottom of the page):

    https://wiki.CentOS.org/SpecialInterestGroup/AltArch/i386

    Run a ‘yum upgrade’, reboot and you should be set.

    Thanks, Johnny Hughes

  • Hello Johnny,

    I’ve just succeeded in installing CentOS7 from the DVD! Had no luck using a Live CD (both dd’ed to a flash drive).

    Hardware support is not complete (or not configured as-is):
    – bluetooth not working
    – HDMI ouput -> nothing
    – dell Fn keys -> no screen light, no wifi toggle
    – no suspend/hibernate

    I will now try to inject more recent kernels (yours *) or extra firmware, see how I can find better hardware support and configuration. And compare this to what Fedora 26 provides..

    (*) BTW, I installed your 4.9.39 kernel (did a yum update after configuring a repo file to get your stuff) and at boot, I immediately get:
    error: $KERNEL_NAME_HERE has invalid signature error: you need to load the kernel first

    Regards,

  • There are actually 2 kernels, one on the live DVD I just posted, and one in the experimental repo.

    Both of those would require NO secure boot turned on, but they both should work fine with UEFI and secure boot off.

  • Hello Johnny,

    I see. It’s true that secure boot is ON here. I’ll turn it off, and also see your other email. Thanks a bunch!

    Regards,

  • Hello Nicolas,

    Installing from the DVD does work! I was trying from the Live CD, no luck.

    Regards,

  • Hello Johnny,

    [snip]

    I could boot 4.9.39, it brings:
    – Dell features like screen light control and wireless toggle key,
    – dual screen support using the HDMI port, and maybe more that I couldn’t see, wow!

    Regards,

  • I am using this experimental kernel on my workstation (lenovo w541). I
    have been using it for quite a long time and have not had any major issues.

    I also use it on my secondary workstation (lenovo h50-55).

  • Hello Johnny,

    In addition to my previous reply:
    – suspend works
    – hibernate works This is just great!

    But it fails to configure VMWare Workstation 12.5.7 and this is a must for my pro activities on this machine.

    The build of vmmon and vmnet kernel modules fail. The 12.5.7 version contain the fixes for known/recent issues related to installing VMWare WS on 4.6/4.9 kernels (API changes) and I couldn’t find a tip about how to solve this yet. Probably off-topic here, but I doubt I’ll get support from VMWare since it’s an experimental kernel on top of CentOS7.

    Regards,

  • While I know that Johnny has provided the experimental kernel (thanks, Johnny) I would like to just briefly address this idea that the C7
    kernel is ‘obviously’ not going to work because ‘is 3.x and must have 4.x.’

    In EL-land, kernel versions are effectively meaningless, since features, hardware support, bugfixes, security fixes, etc are back-ported into the
    ‘old and not modern’ 3.10 kernel (for EL7) by competent developers at Red Hat. An EL 3.10 kernel, such as the current
    3.10.0-514.26.2.el7.x86_64 one, may have hardware support back-ported from a 4.x kernel that doesn’t exist in the vanilla kernel.org kernel
    (I’m almost certain it does, but I’m not going to take the time to get details).

    So it is very possible that full hardware support for your hardware could show up in a 3.10 kernel (in fact, I would expect that this would happen, but it might not happen quickly). As you found out, experimental kernels and non-distribution kernels can freak out software packages, such as VMware Workstation, that only work with certain kernels and are expecting a particular kernel version and ABI for EL7.
    I’ve tried out a few non-standard kernels before, and if you rely on packages that depend upon the distribution default kernel version (as I
    do with kmod-nvidia from ELrepo!) that breakage can be swift, and can derail you in a hurry, causing you to go down a rabbit hole very quickly. So be prepared and keep your eyes open for these issues.

    In some circles, the back-porting of features into old kernels is controversial; but that is a business decision made as part of the EL
    development and is not likely to change any time soon. YMMV.

  • It might work in the RHEL 7.4 kernel .. I’ll get that onto buildlogs for testing while I am working on the CentOS Linux 7 upgrade builds.

    And yes, people do need to understand that Red Hat backports newer firmware and drivers to the older kernels. There are plenty of 4.x kernel things backported. So, as you correctly pointed out, you can’t treat the Red Hat 3.10.x kernels like kernel.org 3.10.x kernels.

  • Hello,

    Thanks for this clear explanation, Lamar. I’ll surely keep an eye on further kernel updates (and CentOS 7.4).

    Regards,

  • Indeed, Lamar and Johnny are correct. For example, the wireless driver stack from kernel-4.11 has just showed up in the RHEL-7.4 kernel released yesterday.

    Further, I would encourage anyone to file RFEs upstream with Red Hat for support to be added for any currently unsupported hardware. If Red Hat don’t know you want support for it, it won’t get added. If you don’t ask, you won’t get.

    Whilst you are waiting on Red Hat to backport support into the distro kernel, don’t forget elrepo.org also specialise in backporting individual device drivers which can provide an invaluable stopgap allowing the distro kernel to continue to be used until such time as the hardware is natively supported. For example, I recently built an updated i2c-i801 el7 driver adding backported support from kernel-4.4 for Braswell and Wildcat Point ICH’s following an RFE from a user.

  • Johnny Hughes wrote:

    Just as a point of information, CentOS 6 runs on a Knights Landing architecture, though 7.x makes more features available. And that was about a year ago….

    mark

  • What about now that you have it booted and working except for VMWare install the mainline 4.x kernel that is available? Take precautionary steps to make sure that will work, hence, back up any data and, if need be, configs.

    Would that work?

    Regards,

    Lance

  • Ok you in Grub press tab and then add „3“ after the initrd entry …. quiet…“

    yum remove xorg-x11-drv-nouveau

    And see if X11 come up with standard frambuffer…

    Disable nouveau complete from kernel if the upper not helps.

    nano /etc/modprobe.d/blacklist-nouveau.conf

    blacklist nouveau

  • If you wanne use the opensource version from nvidia can test my private driver stack

    [cms4all-kernel]
    name=cms4all-kernel baseurl=http://CentOS.cms4all.org/repo/7/kernel/
    #baseurl=file:///srv/repo/CentOS/7/kernel gpgcheck=0
    enabled=1

    Same as ml + some AMD flags and

    [cms4all-drivers]
    name=cms4all-drivers baseurl=http://CentOS.cms4all.org/repo/7/drivers/
    #baseurl=file:///srv/repo/CentOS/7/drivers gpgcheck=0
    enabled=1

    newer linux drivers from libdrm and x11. Optional

    [cms4all-mesa]
    name=cms4all-mesa baseurl=http://CentOS.cms4all.org/repo/7/mesa/
    #baseurl=file:///srv/repo/CentOS/7/mesa gpgcheck=0
    enabled=1

    Sincerely

    Andy

    Am Freitag, den 04.08.2017, 13:24 +0200 schrieb Andreas Benzler:

  • Hello Andy,

    I thought it was an Intel-inside thing ;-), but obviously no, or not only:

    00:02.0 VGA compatible controller: Intel Corporation Device 591b (rev 04) (prog-if 00 [VGA controller])
    Subsystem: Dell Device 07be
    Flags: bus master, fast devsel, latency 0, IRQ 131
    Memory at eb000000 (64-bit, non-prefetchable) [size=16M]
    Memory at 80000000 (64-bit, prefetchable) [size=256M]
    I/O ports at f000 [size=64]
    [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
    Capabilities: [40] Vendor Specific Information: Len=0c
    Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
    Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
    Capabilities: [d0] Power Management version 2
    Capabilities: [100] Process Address Space ID (PASID)
    Capabilities: [200] Address Translation Service (ATS)
    Capabilities: [300] Page Request Interface (PRI)
    Kernel driver in use: i915
    Kernel modules: i915

    01:00.0 3D controller: NVIDIA Corporation Device 1c8d (rev a1)
    Subsystem: Dell Device 07be
    Flags: bus master, fast devsel, latency 0, IRQ 16
    Memory at ec000000 (32-bit, non-prefetchable) [size=16M]
    Memory at c0000000 (64-bit, prefetchable) [size=256M]
    Memory at d0000000 (64-bit, prefetchable) [size=32M]
    I/O ports at e000 [size=128]
    Expansion ROM at ed000000 [disabled] [size=512K]
    Capabilities: [60] Power Management version 3
    Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
    Capabilities: [78] Express Endpoint, MSI 00
    Capabilities: [100] Virtual Channel
    Capabilities: [250] Latency Tolerance Reporting
    Capabilities: [258] L1 PM Substates
    Capabilities: [128] Power Budgeting
    Capabilities: [420] Advanced Error Reporting
    Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024
    Capabilities: [900] #19
    Kernel modules: nouveau

    I must admit that this is new to me! I’m not familiar w/ laptops w/ 2
    devices like that. Now I understand why under Windows, Dell has installed both Intel and NVidia software. Could anyone explain why such hardware configuration?

    I’ll try disabling nouveau as soon as I can and let you know, but also try the opensource version from nvidia. Thanks for both suggestions!

    Regards,

  • devices like that. Now I
    software.

    The Intel HD GPU is actually integrated on the CPU die; the discrete graphics adapter usually has higher performance for graphics-intensive applications.

    In windows, you should be able to choose which graphics adapter an application uses by right-clicking its shortcut and choosing the “Run with graphics processor” option from the context menu (the default can also be set in the NVIDIA Control Panel, with NVIDIA adapters). So you can have the integrated GPU handling mostly static displays and using less battery, while the dedicated GPU kicks in for AutoCAD, video editing, gaming, et cetera.

    On desktop PCs, if the display/s is/are connected to the discrete GPU’s output port/s then the discrete GPU is used for everything.

    I don’t know how to tell which graphics adapter is being used by a particular app in CentOS… the only benchmarking suite I’ve heard of for CentOS is Phoronix (look in EPEL), which should have the GLMark2 benchmark to test the OpenGL renderers. I’m not aware of any linux flavor that supports Direct3D.

  • Hello Mike,

    In that time, no, but since then, yes. I replied some detail elsewhere to this thread. More to come!

    Regards,

  • This point can be done. First to verify that the intel gpu is work.

    I got old laptops in my office and disable nvidia at first and it works.

    Secondary. If the offical NVIDIA kmod version works with the rest of his hardware he can go on with bumblebee. NVIDIA drivers disable nouveau in the same way as I tell him.

    Am Freitag, den 04.08.2017, 16:45 +0100 schrieb John Hodrien:

  • Hello,

    I yum-removed xorg-x11-drv-nouveau, but system will still hang after gfx login.

    After I log in, the mouse is shown on the grey wallpaper, and nothing more. If I attempt to switch to a text tty: mouse is gone, same wallpaper, and no more control on mouse or keyboard, this looks like a video/Xorg issue. Xorg.log shows that it loads the Intel module but still looks for the nouveau one:

    [ 6.565] (II) LoadModule: “nouveau”
    [ 6.565] (WW) Warning, couldn’t open module nouveau
    [ 6.565] (II) UnloadModule: “nouveau”
    [ 6.565] (II) Unloading nouveau
    [ 6.565] (EE) Failed to load module “nouveau” (module does not exist, 0)

    Second attempt: blacklisted nouveau kernel module -> nouveau still shows in `lsmod` after reboot (w/ a non-ml kernel), wft? But Xorg.log doesn’t mention nouveau anymore, success? No, it still hangs w/ ml kernel.

    ====

    After all this, I wanted to get back to kernel 3.10, to see now that nouveau is off, if that changes something. Well this is a surprise, everything works fine w/ this 3.10.0-514.26.2.el7.x86_64 kernel
    (suspend/hibernate/wifi/hmdi-out/dell keys/vmware) BUT the bluetooth
    (and the dell fn+radioswitch key).

    I re-installed drv-nouveau, removed the blacklist file from /etc/modprobe.d and all is still OK, but Xorg doesn’t loads nouveau driver despite the fact that lsmod shows the nouveau kernel module (I checked, during my former attempts w/ this 3.10 kernels, it was already the case: Xorg not loading drv nouveau).

    IOW this whole topics turns into something more complex (call that a mess?) ;-) and I don’t understand how it could not work w/ regard to these laptop features and how it works now.

    I’m willing to help w/ the experimental or ML 4.x series kernels, but in terms of personal productivity, I will also focus on solving the bluetooth issue w/ 3.10 kernel.

    Regards,

  • wwp wrote:

    Suggestion: set it to runlevel 3. After it comes up in text mode, try startx, and see if that tells you more. Also, you won’t have to reboot….

    Have you looked at /etc/X11? Or tried the nVidia configurator?

    mark
    mark

  • Hi,

    If VMware is a must the mainline kernel should work if you use bumblebee? You might have to go into runlevel 3, remove all of nouveau, set your default boot to runlevel 3, reboot, install the mainline kernel, then follow the bumblebee wiki to get nvidia working with the mainline kernel. Then startx and check your Xorg log file for errors and if it works hopefully VMware will work. I don’t know if this will make a difference but have you tried Oracle’s VirtualBox? It might have better support for Linux.

    Lance