eGPU fails on Linux - drivers install, card is authorized and recognized, but nvidia-smi yields no results

Hey everyone, hope y’all are having a good day.

I’ve been struggling for days now trying to get my 3090 Razer Core X eGPU to work with various Linux distributions (latest Fedora, Ubuntu, and Linux Mint) on my Dell XPS 13 plus. The laptop has no dedicated graphics and my BIOS is up to date.

First off, the Razer Core X and the 3090 are recognized by the laptop in some form - on Linux Mint for example, the card shows up in “System” and in the driver manager. Boltctl says that my Razer Core X is connected and authorized. Also, the eGPU “works” with nouveau - the only thing is that it’s always stuck as a cursor on a black screen. This is the case for all the three distros I’ve tried. Note that I’ve always made sure to switch from Wayland to X11 in Ubuntu and Fedora.

Now, when trying to use the proprietary drives, things generally stop working. I’ve tried the 550, 510, and 470 drivers - all to no avail. Running nvidia-smi simply yields “No devices were found.” Using something like gswitch or egpu-switcher causes things to break further. Although they recognize and setup with the 3090 with no complaints, they simply never work when I actually use them. Typically, the most basic error message I have been getting is “Failed to allocate NvKmsKapiDevice,” occurring before the lock screen is displayed, forcing me into tty, where “nvidia-smi” still reports that no devices have been found. Basically, proprietary drivers have cause my laptop to either fail to boot or the laptop simply is back at square one, where nvidia-smi doesn’t yield anything.

It seems to me that a fundamental hardware issue is unlikely, as the eGPU works instantly and flawlessly on Windows. I’ve also tried practically every combination of thunderbolt-related BIOS settings available to me.

I’ve pasted a short list of a few resources I’ve tried to use here: paste[dot]rs[slash]zhC - I’ve put it here awkwardly because the NVIDIA forum wouldn’t allow me to include more than one link. These attempts have generally involved trying a range of drivers, kernel boot parameters, and manual modifications to configuration files. Admittedly, for a lot of these things, I’ve been going into it with little understanding of what I’m doing.

I apologize for my disorganized post, but this was a days-long attempt involving a large number of sources, and I don’t even remember exactly what I’ve been trying.

I’m about to wipe the drive and install Windows as I need a usable computer, but I’d really like to be able to run Linux on my machine. I’ve basically given up at this point, but any help would be enormously appreciated.

Here’s a log file from my most recent Fedora attempt:
nvidia-bug-report.log.gz (118.1 KB)
This one resulted in a blinking cursor, where a login screen would never show up. My first attempt resulted in something quite similar.

Thank you.

Have you tried enabling kms (kernel mode-setting)? This is not enabled by default for nVidia proprietary, but is required for them to do pretty much anything useful.

Thanks for taking the time to reply!

The egpu switcher scripts automatically add nvidia_drm.modeset=1 - would that generally suffice?

It’s a kernel param, so as long as it’s passed in during boot it should work.

The other possibility that comes to mind is that you aren’t loading the nVidia drivers early enough in the boot process, and it’s launching your desktop environment too soon. Make sure the nVidia drivers are in the initramfs and loaded before e.g. LightDM (or whatever you’re using to launch X).

I haven’t had your particular issue, but did have to do some tinkering to get the RTX3070 in my laptop working on Arch.

1 Like

RmInitAdapter failed! (0x26:0x56:1253)
Known issue, please try

  • update bios
  • try using open kernel modules
  • if all fails you can install driver 470.82 from runfile
1 Like

Thank you so much for taking the time to help, really appreciate it.

My BIOS was already up to date, but using the open kernel modules (by downloading and installing the CUDA toolkit), did have interesting results. Now, I’m able to hit the lock screen, but experience a login loop as soon as I enter my password on X11.

At the very least, it’s a different error.

Are you aware of any common fixes to this? Is there some kind of kernel boot parameter I should try? Or would you like me to attach a nvidia-bug-report.log.gz?

Please create a new nvidia-bug-report.log.

Any update on this issue?

I’m having the exact same problem - eGPU with RTX3060Ti on Ubuntu that gives “Failed to allocate NvKmsKapiDevice” errors at boot. I’ve tried different cores, many different versions of the drivers etc to no avail. Packaged installs, .run installs, etc. I’m running Ubuntu 22.04LTS, back to the stock kernel but have tried several newer ones in my failed debugging saga.

The eGPU works perfectly on Windows though - even hot plugging works - so I’ve switched to using Windows (mainly PoTorch stuff, so I’m using conda to make the setup I wanted to use in Ubuntu) until a new driver is released, then I’ll try again, but if there’s some resolution to this I’ll try again.

This was an issue I’d spent maybe two weeks on, and because nothing worked, I just decided to transition from Linux being my main driver to having a balance between Windows and Linux. I now just use Windows with my eGPU - I needed to get work done and didn’t have more time (or energy) to spend figuring it out.

If you end up discovering something though, do let me know! :)

Thanks, that’s what I’ve done as well. Still would like to figure it out because I prefer Linux.

RmInitAdapter failed! (0x26:0x56:1253)
is a known issue on linux, if no bios update is available that fixes it, you can only workaround it by using the “open kernel” modules and set the needed kernel parameter to enable it.