Getting to the point; On the version of Manjaro KDE that I’m running, when I choose to use hybrid graphics with NVIDIA-prime render offloading (named ‘video-hybrid-Intel-nvidia-prime’), MHWD doesn’t generate a file in xorg.conf.d with anything in it, meaning i don’t know how too properly write out my desired settings.
I’ve tried via trial and error to find a usable configuration but everything either results in a black screen or display pass-through which doesn’t really help me, at this point I suspect some kernel parameter somewhere needs to be flicked on or off but I have no way of knowing since all I’ve had to work with so far is a black screen and i have no idea how to format a xorg.conf for NVIDIA-Prime.
Though to be clear, NVIDIA-Prime itself functions just fine, I just can’t add, for example, Options “Coolbits” “8” to a .conf and have it stick.
To give some background, what I’m attempting to do is use NVIDIA-prime render offloading as a means of utilizing the card on the host when it’s not bound to vfio and used for GPU pass-through, essentially it’d mean I wouldn’t have to fiddle with cables every time i passed the GPU around, since i only have and want to have one monitor with one HDMI input.
I should probably also mention I have a dummy HDMI plug which I use for virtualization purposes when the card is passed to the guest, it wasn’t ever plugged in while I was trying xorg configs but I’m pretty sure it’s something I’d have to consider when I finally get a working .conf with settings i can change and have apply.
I don’t think I fully got what you’re trying to do but I guess you want to conditionally add nvidia options on top of the system generated ones. That can be achieved by using the OuputClass directive, i.e. cretae a file
/etc/X11/xorg.conf.d/10-nvidia-myoptions.conf
I saw this config on reddit yesterday while i was looking for a solution, by itself the .conf doesn’t do anything on my system, (NVIDIA X server settings has no new options) but when I specify a BusID, for example…
The display from my iGPU is black (no image,not off).
Manjaro’s hardware detection, MHWD, dosen’t seem to generate a xorg config with anything in it, the nvidia.conf in /etc/X11/mhwd.d is simply blank minus a commented-out note;
##
## Generated by mhwd - Manjaro Hardware Detection
##
(A link to this nvidia.conf is placed in /etc/X11/xorg.conf.d, which is how Manjaro uses the config)
What I’m asking for is how to format a xorg.conf which uses the iGPU as the render-er, until otherwise specified by a prime-run %command%, since Manjaro doesn’t generate one by default with the hybrid drivers which works fine by itself but means I can’t overclock or apply fan curves as normal with coolbits in xorg.conf… since the file is empty and I haven’t found a working config.
I’m somewhat new to Linux so excuse me if I’m missing something obvious,
NB: overclocking is rarely ever supported by mobile gpus. The fan on mobile gpus is always controlled by the system bios (previously, the rare case of mxm add-ons existed).
Please run nvidia-bug-report.sh as root and attach the resulting nvidia-bug-report.log.gz file to your post.
Here is a pastebin link, I ran the report with the .conf I mentioned in my last post that resulted in a black screen,
Hopefully that has some valueable information in it,
I should probably explain in more detail what I have and what I’m trying to do;
I’m using standard desktop components for display outputs, A i5-9600k and a EVGA 1650 super
The reason I’m using Prime is because it allows me to more easily pass the card to VMs and back to the host with only 1 monitor without
Changing HDMI ports, using multiple xorg.confs with Optimus-manager, or buying a monitor with two display inputs
Prime works by itself, works really well infact, I just can’t figure out how to have the card read a .conf correctly
My original post was probably a bit more obtuse than it had to be
The nvidia driver is loading correctly but you’re using the intel driver instead of the standard modesetting driver for the igpu. Don’t know if render offload works with that.
I also can’t spot the config file where you enabled the intel driver…
To have something running on the nvidia, prepend
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia
e.g.
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep vendor
I heard the Intel driver had better performance than the modesetting drivers, I don’t see why it wouldn’t work but thats something to try, though I recall using both in my troubleshooting spree
I can confirm that render offloading functions normally, it’s just settings under /etc/X11/ either don’t apply or result in a black screen
You can put your options inside the outputclass section of
/usr/share/X11/xorg.conf.d/10-intel-nvidia-drm-outputclass.conf
Don’t use the BusID directive in OutputClass.
I remember hearing somewhere that modifying files from usr/share is a bad idea in general, but sure why not I’ll make a backup quick and see if it does something.
[ 3.721] (WW) NVIDIA(G0): Option "Coolbits" is not used
But I know that I can input cool bits normally with xorg.conf if the display is simply passed to the iGPU like i said i could do with optimus-manager or with a specific .conf i.e not using prime, I could do that right now actually since I have a bunch of .confs I was working with yesterday on my desktop, gimme a sec
There is probably allot of unnecessary settings in there but it does work just without prime, which is disapointing if prime simply can’t use overclocking settings
Ah that would have been helpful too know, and was what I was asking, :)
But thanks anyway man, Its very difficult to find documentation on these things, or at the very least difficult for me to find documentation, guess I’ll have to use optimus for multiple xorg profiles, not as clean as I’d like but oh well