Jump to content
  • Unraid OS version 6.9.0-beta35 available


    limetech

    New in this release:


    GPU Driver Integration

    Unraid OS now includes selected in-tree GPU drivers: ast (Aspeed), i915 (Intel), amdgpu and radeon (AMD).  These drivers are blacklisted by default via 'conf' files in /etc/modprobe.d:

    /etc/modprobe.d/ast.conf
    /etc/modprobe.d/amdgpu.conf
    /etc/modprobe.d/i915.conf
    /etc/modprobe.d/radeon.conf

    Each of these files has a single line which blacklists the driver, preventing it from being loaded by the Linux kernel.

     

    However it is possible to override the settings in these files by creating the directory 'config/modprobe.d' on your USB flash boot device and then creating the same named-file in that directory.  For example, to unblacklist amdgpu type these commands in a Terminal session:

    mkdir /boot/config/modprobe.d
    touch /boot/config/modprobe.d/amdgpu.conf

    When Unraid OS boots, before the Linux kernel executes device discovery, we copy any files from /boot/config/modprobe.d to /etc/modprobe.d.  Since amdgpu.conf on the flash is an empty file, it will effectively cancel the driver from being blacklisted.

     

    This technique can be used to set boot-time options for any driver as well.

     

    Better Support for Third Party Drivers

    Recall that we distribute Linux modules and firmware in separate squashfs files which are read-only mounted at /lib/modules and /lib/firmware.  We now set up an overlayfs on each of these mount points, making it possible to install 3rd party modules at boot time, provided those modules are built against the same kernel version.  This technique may be used by Community Developers to provide an easier way to add modules not included in base Unraid OS: no need to build custom bzimage, bzmodules, bzfirmware and bzroot files.

     

    To go along with the other GPU drivers included in this release, we have created a separate installable Nvidia driver package.  Since each new kernel version requires drivers to be rebuilt, we have set up a feed that enumerates each driver available with each kernel.

     

    The easiest way to install the Nvdia driver, if you require it, is to make use of a plugin provided by Community member @ich777This plugin uses the feed to install the correct driver for the currently running kernel.  A big thank you! to @ich777 for providing assistance and coding up the the plugin:

     

    Linux Kernel

    This release includes Linux kernel 5.8.18.  We realize the 5.8 kernel has reached EOL and we are currently busy upgrading to 5.9.

     


     

    Version 6.9.0-beta35 2020-11-12 (vs -beta30)

    Base distro:

    • aaa_elflibs: version 15.0 build 25
    • brotli: version 1.0.9 build 2
    • btrfs-progs: version 5.9
    • ca-certificates: version 20201016
    • curl: version 7.73.0
    • dmidecode: version 3.3
    • ethtool: version 5.9
    • freetype: version 2.10.4
    • fuse3: version 3.10.0
    • git: version 2.29.1
    • glib2: version 2.66.2
    • glibc-solibs: version 2.30 build 2
    • glibc-zoneinfo: version 2020d
    • glibc: version 2.30 build 2
    • iproute2: version 5.9.0
    • jasper: version 2.0.22
    • less: version 563
    • libcap-ng: version 0.8 build 2
    • libevdev: version 1.10.0
    • libgcrypt: version 1.8.7
    • libnftnl: version 1.1.8
    • librsvg: version 2.50.1
    • libwebp: version 1.1.0 build 3
    • libxml2: version 2.9.10 build 3
    • lmdb: version 0.9.27
    • nano: version 5.3
    • ncurses: version 6.2_20201024
    • nginx: version 1.19.4
    • ntp: version 4.2.8p15 build 3
    • openssh: version 8.4p1 build 2
    • pam: version 1.4.0 build 2
    • rpcbind: version 1.2.5 build 2
    • samba: version 4.12.9 (CVE-2020-14318 CVE-2020-14318 CVE-2020-14318)
    • talloc: version 2.3.1 build 4
    • tcp_wrappers: version 7.6 build 3
    • tdb: version 1.4.3 build 4
    • tevent: version 0.10.2 build 4
    • usbutils: version 013
    • util-linux: version 2.36 build 2
    • vsftpd: version 3.0.3 build 7
    • xfsprogs: version 5.9.0
    • xkeyboard-config: version 2.31
    • xterm: version 361

    Linux kernel:

    • version 5.8.18
    • added GPU drivers:
    • CONFIG_DRM_RADEON: ATI Radeon
    • CONFIG_DRM_RADEON_USERPTR: Always enable userptr support
    • CONFIG_DRM_AMDGPU: AMD GPU
    • CONFIG_DRM_AMDGPU_SI: Enable amdgpu support for SI parts
    • CONFIG_DRM_AMDGPU_CIK: Enable amdgpu support for CIK parts
    • CONFIG_DRM_AMDGPU_USERPTR: Always enable userptr write support
    • CONFIG_HSA_AMD: HSA kernel driver for AMD GPU devices
    • kernel-firmware: version 20201005_58d41d0
    • md/unraid: version 2.9.16: correction recording disk info with array Stopped; remove 'superblock dirty' handling
    • oot: Realtek r8152: version 2.14.0

    Management:

    • emhttpd: fix 'auto' setting where pools enabled for user shares should not be exported
    • emhttpd: permit Erase of 'DISK_DSBL_NEW' replacement devices
    • emhtptd: track clean/unclean shutdown using file 'config/forcesync'
    • emhttpd: avoid unnecessarily removing mover.cron file
    • modprobe: blacklist GPU drivers by default, config/modprobe.d/* can override at boot
    • samba: disable aio by default
    • startup: setup an overlayfs for /lib/modules and /lib/firmware
    • webgui: pools not enabled for user shares should not be selectable for cache
    • webgui: Add pools information to diagnostics
    • webgui: vnc: add browser cache busting
    • webgui: Multilanguage: Fix unable to delete / edit users
    • webgui: Prevent "Add" reverting to English when adding a new user with an invalid username
    • webgui: Fix Azure / Gray Switch Language being cut-off
    • webgui: Fix unable to use top right icons if notifications present
    • webgui: Changed: Consistency between dashboard and docker on accessing logs
    • webgui: correct login form wrong default case icon displayed
    • webgui: set 'mid-tower' default case icon
    • webgui: fix: jGrowl covering buttons
    • webgui: New Perms: Support multi-cache pools
    • webgui: Remove WG from Dashboard if no tunnels defined
    • webgui: dockerMan: Allow readmore in advanced view
    • webgui: dockerMan: Only allow name compatible with docker

    Edited by limetech

    • Like 10
    • Thanks 4


    User Feedback

    Recommended Comments



    Interesting. I didn't thing GPU drivers were coming this soon.

     

    I assume you didn't build in support for 3rd party modules just for that though, interested to see what comes of this down the road!

    Share this comment


    Link to comment
    Share on other sites

    Great news.

     

    39 minutes ago, Dtrain said:

    still no thunderbolt support !

    Crazy how they constantly focus on features benefiting more than 1% of the maximum userbase, right. 🤪

    • Like 1
    • Haha 6

    Share this comment


    Link to comment
    Share on other sites

    Thanks for the new beta.   The write-up went right over my head as someone who's not very technical e.g. I can follow the instructions for the GPU Driver instruction section on how to configure the files...but, I don't know why I would do this or when it might be beneficial or not to do so.  What does it potentially allow me to do?  Thanks.

     

    I'm keen to give this one a go as I'm still stuck on beta25 as the releases before this one, kept causing my machine to hang and lock me out.

    Share this comment


    Link to comment
    Share on other sites

    Hello all,

    Thank for this release.

    Anyone understood how to install nvidia driver?

    Someone can help me?

    Thank you very much.

     

    Edit: You have to install the plugin linked in the post :)

    Edited by rachid596
    • Like 1

    Share this comment


    Link to comment
    Share on other sites
    1 minute ago, rachid596 said:

    Hello all,

    Thank for this release.

    Anyone understood how to install nvidia driver?

    Someone can help me?

    Thank you very much.

    Install the referenced plugin.  It will install the Nvidia driver and tools needed for transcoding in Docker containers.  If you don't care about this, no need to deal with it.  The plugin is more of a "work in process" right now and will mature over time, including being added to Community Apps.

     

    We didn't include the Nvidia vendor driver built-in to the release for several reasons:

    • The package is very large, over 200MB and no need for everyone to download this thing if they don't need it.
    • Including the driver "taints" the Linux kernel.  There is something of a longstanding war between the Linux community and Nvidia because large parts of the Nvidia are not open source.  Due to how the driver has to integrate into the kernel, this "taints" the kernel.  For us it means if we have an kernel-related issues, no developer will help out if they see the kernel is tainted.  Also don't want that message appearing in syslog by default :)
    • The Nvidia driver might change faster than we want to update Linux kernel.  In this case we can build and publish a new driver independent of Unraid OS release.

     

    • Like 7
    • Thanks 2

    Share this comment


    Link to comment
    Share on other sites
    5 minutes ago, limetech said:

    Install the referenced plugin.  It will install the Nvidia driver and tools needed for transcoding in Docker containers.  If you don't care about this, no need to deal with it.  The plugin is more of a "work in process" right now and will mature over time, including being added to Community Apps.

     

    We didn't include the Nvidia vendor driver built-in to the release for several reasons:

    • The package is very large, over 200MB and no need for everyone to download this thing if they don't need it.
    • Including the driver "taints" the Linux kernel.  There is something of a longstanding war between the Linux community and Nvidia because large parts of the Nvidia are not open source.  Due to how the driver has to integrate into the kernel, this "taints" the kernel.  For us it means if we have an kernel-related issues, no developer will help out if they see the kernel is tainted.  Also don't want that message appearing in syslog by default :)
    • The Nvidia driver might change faster than we want to update Linux kernel.  In this case we can build and publish a new driver independent of Unraid OS release.

     

    Thank you very much it's work now. :)

    Share this comment


    Link to comment
    Share on other sites
    47 minutes ago, -Daedalus said:

    Interesting. I didn't thing GPU drivers were coming this soon.

     

    I assume you didn't build in support for 3rd party modules just for that though, interested to see what comes of this down the road!

    Right.  Part of this was prompted by @ich777 providing insight in what's required to use the driver effectively.  Also, the tools and techniques to install this driver is proof-of-concept that can be applied to other drivers and other modules which may have to be installed independently due to licensing.  Finally, we want to discourage "unofficial" builds of the bz* files.

    • Like 1

    Share this comment


    Link to comment
    Share on other sites
    6 minutes ago, limetech said:

    Install the referenced plugin.  It will install the Nvidia driver and tools needed for transcoding in Docker containers.  If you don't care about this, no need to deal with it.  The plugin is more of a "work in process" right now and will mature over time, including being added to Community Apps.

     

    We didn't include the Nvidia vendor driver built-in to the release for several reasons:

    • The package is very large, over 200MB and no need for everyone to download this thing if they don't need it.
    • Including the driver "taints" the Linux kernel.  There is something of a longstanding war between the Linux community and Nvidia because large parts of the Nvidia are not open source.  Due to how the driver has to integrate into the kernel, this "taints" the kernel.  For us it means if we have an kernel-related issues, no developer will help out if they see the kernel is tainted.  Also don't want that message appearing in syslog by default :)
    • The Nvidia driver might change faster than we want to update Linux kernel.  In this case we can build and publish a new driver independent of Unraid OS release.

     

    nvidia still doesn't support 5.9 kernel.

     

    I think you give them too much credit ;)

    Share this comment


    Link to comment
    Share on other sites

    Forgive me if the answer is obvious, but what is the use for GPU drivers?  Will it eliminate the need for the unraid-nvidia plugin? if so, does that mean AMD cards can be passed to docker?

     

    Share this comment


    Link to comment
    Share on other sites
    30 minutes ago, bigmac5753 said:

    Forgive me if the answer is obvious, but what is the use for GPU drivers?  Will it eliminate the need for the unraid-nvidia plugin? if so, does that mean AMD cards can be passed to docker?

     

    For those not passing through GPU to VM, having the drivers installed does a couple things:

    • Lets the "console" (monitor/keyboard attached to on-board graphics or add-on graphics card) operate at full resolution if you are using the GPU for that purpose.
    • Let's Docker containers leverage the GPU processing power for various applications, eg, transcoding.

     

    However if you have an add-on GPU being passed to a VM you can either not install the Linux driver for it (default for Unraid OS), or have it bound to 'stub' driver via Tools/System Devices page.  This is useful for example, if you have multiple GPU's installed.  You could have one bound to a VM and one with driver installed used for transcoding in Docker.

    • Thanks 2

    Share this comment


    Link to comment
    Share on other sites
    1 hour ago, limetech said:

    Finally, we want to discourage "unofficial" builds of the bz* files.

    Wow. Talk about a slap in the face. @CHBMB and @bass_rock busted their behinds for years to provide a working solution to unraid users with minimal input and no acknowledgement from limetech. They had to do so much trial and error trying to figure out what may or may not have changed in unraid (out of tree drivers and whatnot) with each new version.

     

    All of a sudden limetech finally decides to roll out a solution and they want to 'discourage "unofficial" builds of the bz* files'.

    Nice one.

    • Like 2
    • Thanks 1

    Share this comment


    Link to comment
    Share on other sites

     

    24 minutes ago, aptalca said:

    Wow. Talk about a slap in the face. @CHBMB and @bass_rock busted their behinds for years to provide a working solution to unraid users with minimal input and no acknowledgement from limetech. They had to do so much trial and error trying to figure out what may or may not have changed in unraid (out of tree drivers and whatnot) with each new version.

     

    All of a sudden limetech finally decides to roll out a solution and they want to 'discourage "unofficial" builds of the bz* files'.

    Nice one.

    Yep, I've sent a PM to LT.  I'm out of here.  They can sort DVB out as well. 

     

    I am very officially retiring from any form of Unraid development.

    Edited by CHBMB
    • Like 2
    • Thanks 1

    Share this comment


    Link to comment
    Share on other sites

    Install went well here on my ryzen system...nvidia drivers all installed as well. One thing i can't click any dockers or vm on the dashboard. Nothing happens....

    Share this comment


    Link to comment
    Share on other sites
    2 hours ago, limetech said:

    Right.  Part of this was prompted by @ich777 providing insight in what's required to use the driver effectively.  Also, the tools and techniques to install this driver is proof-of-concept that can be applied to other drivers and other modules which may have to be installed independently due to licensing.  Finally, we want to discourage "unofficial" builds of the bz* files.

    You know you could have discussed this with me right?  Remember me, the original dev, along with @bass_rock!  The one you tasked @jonp to discuss how we achieved the Nvidia builds back in December last year? 

     

    That I never heard anything more about.  I'm the one that spend 6 months f**king around with Unraid to get the GPU drivers working in docker containers. 

     

    The one that's been hosting literally 100s of custom Unraid builds for the community to use for nearly five years.  With all due respect to @ich777 he wasn't the one who did the bulk of the work here.

     

    Remember?

     

    You'll be pleased to know I will no longer be producing any custom "unofficial" builds for all the things you've not wanted to pick up and support for the last 10 years.  A bit like unassigned devices and @dlandon, hell that should have been incorporated half a decade ago.  In fact, I won't be doing anything here from this point on.  

     

    Nearly 5 years of DVB and nearly 2 years of Nvidia.  You're welcome to them.

     

    DVB is all yours now as well.

     

    Good Luck.

    • Like 9
    • Thanks 1

    Share this comment


    Link to comment
    Share on other sites
    2 hours ago, aptalca said:

    Wow. Talk about a slap in the face. @CHBMB and @bass_rock busted their behinds for years to provide a working solution to unraid users with minimal input and no acknowledgement from limetech. They had to do so much trial and error trying to figure out what may or may not have changed in unraid (out of tree drivers and whatnot) with each new version.

     

    All of a sudden limetech finally decides to roll out a solution and they want to 'discourage "unofficial" builds of the bz* files'.

    Nice one.

    We have improved the product to greatly simplify the effort involved in providing this niche functionality.  Not a slap at all, instead it's acknowledgment of their efforts.

    • Like 4

    Share this comment


    Link to comment
    Share on other sites
    24 minutes ago, limetech said:

    Not a slap at all, instead it's acknowledgment of their efforts.

    ?? I don't see any acknowledgement

    • Like 1

    Share this comment


    Link to comment
    Share on other sites

    @limetech Ok, you will support DVB drivers for future releases? 😵

    • Like 1

    Share this comment


    Link to comment
    Share on other sites
    34 minutes ago, limetech said:

    We have improved the product to greatly simplify the effort involved in providing this niche functionality.  Not a slap at all, instead it's acknowledgment of their efforts.

    Yes Tom, that's how I viewed it when we developed the Nvidia stuff originally, it was improving the product. 

    The thread has been running since February 2019, it's a big niche.  99 pages and 2468 posts.

    • Like 4
    • Thanks 3

    Share this comment


    Link to comment
    Share on other sites

    @CHBMB, @aptalca, @memphisto, everyone else who thinks I somehow disrespected anyone here, would you have felt the same way if we just integrated the bloody Nvidia vendor driver right into Unraid OS distribution like we do other vendor supplied drivers: RocketRaid, Realtek, Tehuti?  It is not difficult to do this; actually it's quite easy.  The problem is, this driver alone along with support tools adds 110MB to the download and expands close to 400MB of root file system usage.  Only a fraction of Unraid users require this, why make everyone bear this cost?  Same situation for all the other drivers required for the "DVB" builds.

     

    Further, dealing with vendor-supplied drivers has always been a headache in Unraid OS.  This is because sometimes they don't keep up with kernel development and won't build with the latest kernels.  Sometimes we don't keep up with driver releases because we're not prepared to publish a new Unraid OS just for a driver update.

     

    What we put in place is just a mechanism to install selected drivers on demand.  This will make everyone's life far simpler.  We didn't use anyone's code from the Community except for some pre-compiled user-space Nvidia tools provided by a member here.

     

    Somehow this is being blown waaay out of proportion, largely due to misunderstanding I think.

    • Like 3

    Share this comment


    Link to comment
    Share on other sites
    19 minutes ago, limetech said:

    @CHBMB, @aptalca, @memphisto, everyone else who thinks I somehow disrespected anyone here,

     

    Somehow this is being blown waaay out of proportion, largely due to misunderstanding I think.

    @Tom - you and the team have worked hard and we all appreciate it!  but the issue is Respect and Communication (which sounds like there was none given).  THAT is a punch in the face!  Would you want to work that way for someone/something?

    • Like 3

    Share this comment


    Link to comment
    Share on other sites
    2 minutes ago, ds679 said:

    @Tom - you and the team have worked hard and we all appreciate it!  but the issue is Respect and Communication (which sounds like there was none given).  THAT is a punch in the face!  Would you want to work that way for someone/something?

    With due respect, that is utter nonsense.  I integrated a single vendor supplied driver.  I didn't know I needed permission from the Community to do this.

    • Like 3

    Share this comment


    Link to comment
    Share on other sites



    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Status Definitions

     

    Open = Under consideration.

     

    Solved = The issue has been resolved.

     

    Solved version = The issue has been resolved in the indicated release version.

     

    Closed = Feedback or opinion better posted on our forum for discussion. Also for reports we cannot reproduce or need more information. In this case just add a comment and we will review it again.

     

    Retest = Please retest in latest release.


    Priority Definitions

     

    Minor = Something not working correctly.

     

    Urgent = Server crash, data loss, or other showstopper.

     

    Annoyance = Doesn't affect functionality but should be fixed.

     

    Other = Announcement or other non-issue.