Bug 1434531

Summary: Hybrid nVidia GPU missing from xrandr --listproviders
Product: [Fedora] Fedora Reporter: Bob Bugzilla <bugzilla>
Component: xorg-x11-drv-nouveauAssignee: Ben Skeggs <bskeggs>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 25CC: airlied, ajax, bskeggs, bugzilla, hdegoede
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-22 18:27:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
xorg-x11 and mesa packages
none
lshw -class display
none
dmesg
none
Xorg.0.log
none
modprobe.d file list and contents
none
Rebuilf initramfs and grub.cfg
none
Xorg.0.log with nouveau force load none

Description Bob Bugzilla 2017-03-21 16:28:29 UTC
Description of problem:

Intel Haswell controller (HD 4600) which feeds 3D rendering to a back-end nVidia chip (GK107GLM [Quadro K1100M]).

The nvidia chip used to be listed as a provider under xrandrx and available for Source Offload.  It is not longer listed.

Version-Release number of selected component (if applicable):

# inxi -Fzx
System:    Host: xyzzy Kernel: 4.9.14-200.fc25.x86_64 x86_64 (64 bit gcc: 6.3.1)
           Desktop: Cinnamon 3.2.8 (Gtk 3.22.10) Distro: Fedora release 25 (Twenty Five)
CPU:       Quad core Intel Core i7-4712HQ
Graphics:  Card-1: Intel 4th Gen Core Processor Integrated Graphics Controller bus-ID: 00:02.0
           Card-2: NVIDIA GK107GLM [Quadro K1100M] bus-ID: 02:00.0
           Display Server: X.org 1.19.1 drivers: nouveau,intel (unloaded: modesetting,fbdev,vesa)

How reproducible:
Very

Steps to Reproduce:
1. Install Fedora 25
2. Apply all updates
3. Get crappy graphics performance

Actual results:
# xrandr --listproviders 
Providers: number : 1
Provider 0: id: 0x48 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 5 associated providers: 0 name:Intel

Expected results:
# xrandr --listproviders
Providers: number : 2
 Provider 0: id: 0x89 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 6 associated providers: 1 name:Intel
 Provider 1: id: 0x5f cap: 0x5, Source Output,            Source Offload crtcs: 0 outputs: 0 associated providers: 1 name:nouveau

Additional info:
Benchmark test: export vblank_mode=0; glxgears
Used to get 12,000 FPS.
Now get 1,000 FPS.

Comment 1 Bob Bugzilla 2017-03-21 16:35:53 UTC
Created attachment 1265175 [details]
xorg-x11 and mesa packages

rpm -qa | egrep  '^xorg-x11|^mesa' | sort

Comment 2 Bob Bugzilla 2017-03-21 23:13:52 UTC
Created attachment 1265224 [details]
lshw -class display

lshw -class display

Comment 3 Hans de Goede 2017-03-22 11:46:24 UTC
Hi,

Can you please do (directly after boot):

dmesg > dmesg.log

And then attach dmesg.log here ?

Also please attach a recent Xorg.0.log here, likely you will find it in ~/.local/share/xorg/Xorg.0.log .

Regards,

Hans

Comment 4 Bob Bugzilla 2017-03-22 17:04:59 UTC
Created attachment 1265448 [details]
dmesg

dmesg output

Comment 5 Bob Bugzilla 2017-03-22 17:05:32 UTC
Created attachment 1265450 [details]
Xorg.0.log

Xorg.0.log

Comment 6 Hans de Goede 2017-03-22 17:09:44 UTC
For some reason nouveau does not seem to load at all, do you perhaps have a *.conf file in /lib/modprobe.d or /etc/modprobe.d leftover from an nvidia driver install which contains "blacklist nouveau" ?  Also try regenerating your initrd.

Can you do "lsmod | grep nouveau" and see if it outputs anything ? If not try explicitly loading nouveau with: "modprobe nouveau"

Comment 7 Bob Bugzilla 2017-03-22 17:22:02 UTC
Created attachment 1265460 [details]
modprobe.d file list and contents

/etc/modprobe.d/ file list and contents

Comment 8 Bob Bugzilla 2017-03-22 17:29:47 UTC
Thanks for looking into this, Hans!

Do you mean regenerate initramfs (with dracut)?

nouveau is not loaded (output below).
If I load nouveau before starting x, no difference. (Will test again).

How else can I help?

----

# lsmod | fgrep nouveau

# modprobe nouveau

# lsmod | fgrep nouveau
nouveau              1564672  0
ttm                    94208  1 nouveau
mxm_wmi                16384  1 nouveau
i2c_algo_bit           16384  2 nouveau,i915
drm_kms_helper        151552  2 nouveau,i915
drm                   339968  13 nouveau,i915,ttm,drm_kms_helper
video                  40960  5 dell_wmi,dell_laptop,int3406_thermal,nouveau,i915
wmi                    16384  3 dell_wmi,mxm_wmi,nouveau

Comment 9 Bob Bugzilla 2017-03-22 17:54:22 UTC
Created attachment 1265466 [details]
Rebuilf initramfs and grub.cfg

Rebuilf initramfs and grub.cfg
Contents of /etc/sysconfig/grub
Contents of /boot/grub2/grub.cfg

Comment 10 Bob Bugzilla 2017-03-22 18:04:52 UTC
I guess the nvidia hardware not showing in dmesg means that it is not found at boot.  That seems like the biggest clue.

I have tried loading the nouveau module before starting x (gdm), no change in the Xorg.0.log output.

Comment 11 Bob Bugzilla 2017-03-22 18:16:35 UTC
Created attachment 1265468 [details]
Xorg.0.log with nouveau force load

# cat /etc/X11/xorg.conf.d/20-nouveau.conf

Section "Module"
	Load  "nouveau"
EndSection

Comment 12 Bob Bugzilla 2017-03-22 18:22:16 UTC
# ls -1 /lib/modprobe.d

dist-alsa.conf
dist-blacklist.conf
nvidia-installer-disable-nouveau.conf
openfwwf.conf


# cat /lib/modprobe.d/nvidia-installer-disable-nouveau.conf 

# generated by nvidia-installer
blacklist nouveau
options nouveau modeset=0


# rm /lib/modprobe.d/nvidia-installer-disable-nouveau.conf 

# shutdown -r now

Comment 13 Bob Bugzilla 2017-03-22 18:26:27 UTC
# xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x88 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 5 associated providers: 1 name:Intel
Provider 1: id: 0x5f cap: 0x5, Source Output, Source Offload crtcs: 0 outputs: 0 associated providers: 1 name:nouveau