← Back to team overview

desktop-packages team mailing list archive

[Bug 1485236] [NEW] gpu-manager generates an invalid xorg.conf file

 

Public bug reported:

I use Ubuntu 15.04. I have both a nvidia graphics card and an integrated
intel one. Sometimes, I boot my system without nvidia card, and
sometimes with both. Until recently this setup worked correctly, so that
when the nvidia card was enabled, the system would boot up using nvidia
drivers, and in the other case it would use intel card. Now I am unable
to boot up without nvidia card. Booting with it removes the xorg.conf
file (it is empty). When I reboot with intel card only,  Xorg fails to
start because of the following error:

Data incomplete in file /etc/X11/xorg.conf 
Undefined Screen "nvidia" referenced by ServerLayout "layout". 

I check gpu-manager's logs, and indeed it claims to have generated the
xorg.conf file:

==gpu-manager.log==
log_file: /var/log/gpu-manager.log
last_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
new_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
grep dmesg status 0
dmesg status 0 == 0? Yes
grep dmesg status 256
dmesg status 256 == 0? No
Is nvidia loaded? no
Was nvidia unloaded? yes
Is nvidia blacklisted? no
Is fglrx loaded? no
Was fglrx unloaded? no
Is fglrx blacklisted? no
Is intel loaded? yes
Is radeon loaded? no
Is radeon blacklisted? no
Is nouveau loaded? no
Is nouveau blacklisted? yes
Is fglrx kernel module available? no
Is nvidia kernel module available? yes
Vendor/Device Id: 8086:412
BusID "PCI:0@0:2:0"
Is boot vga? yes
Vendor/Device Id: 10de:1184
BusID "PCI:1@0:0:0"
Is boot vga? no
The device is a pci passthrough. Skipping...
Skipping "/dev/dri/card0", driven by "i915"
Skipping "/dev/dri/card0", driven by "i915"
Found "/dev/dri/card0", driven by "i915"
output 0:
	DisplayPort connector
Number of connected outputs for /dev/dri/card0: 1
Does it require offloading? yes
last cards number = 1
Has amd? no
Has intel? yes
Has nvidia? no
How many cards? 1
Has the system changed? No
main_arch_path x86_64-linux-gnu, other_arch_path i386-linux-gnu
Current alternative: /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf
Current core alternative: (null)
Is nvidia enabled? no
Is fglrx enabled? no
Is mesa enabled? yes
Is pxpress enabled? no
Is prime enabled? no
Is nvidia available? no
Is fglrx available? no
Is fglrx-core available? no
Is mesa available? yes
Is pxpress available? no
Is prime available? no
Single card detected
PRIME detected
pci bus from dmesg status 0
can't open /sys/module/nvidia/version
/sys/class/dmi/id/product_version="To Be Filled By O.E.M."
/sys/class/dmi/id/product_name="To Be Filled By O.E.M."
1st try: bbswitch without quirks
Loading bbswitch with "load_state=-1 unload_state=1" parameters
2nd try: bbswitch with quirks
Loading bbswitch with "load_state=-1 unload_state=1 skip_optimus_dsm=1" parameters
Warning: can't load bbswitch, switching between GPUs won't work
Selecting nvidia
Error: no alternative found for nvidia
Error: failed to enable the driver
Selecting mesa
/usr/bin/update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf
update-alternatives status 0
Calling ldconfig
ldconfig status 0
/usr/bin/update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf
update-alternatives status 0
Calling ldconfig
ldconfig status 0
Error: no alternative found for unblacklist
Removing xorg.conf. Path: /etc/X11/xorg.conf
can't access /etc/X11/xorg.conf
Check failed
Removing xorg.conf. Path: /etc/X11/xorg.conf
Moved /etc/X11/xorg.conf to /etc/X11/xorg.conf.08152015
Regenerating xorg.conf. Path: /etc/X11/xorg.conf
No need to change the current bbswitch status
===================

However, the generated xorg.conf file is clearly invalid:

=====xorg.conf=====
Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "intel"
    Driver "intel"
    BusID "PCI:0@0:2:0"
    Option "AccelMethod" "SNA"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection
===================

So Xorg is right to report the error that screen "nvidia" is undefined.
Apparently the xorg.conf file that gpu-manager generated is incorrect,
and this issue prevents me from booting my system correctly, and this
makes me believe this bug may be considered significant.

** Affects: ubuntu-drivers-common (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to ubuntu-drivers-common in Ubuntu.
https://bugs.launchpad.net/bugs/1485236

Title:
  gpu-manager generates an invalid xorg.conf file

Status in ubuntu-drivers-common package in Ubuntu:
  New

Bug description:
  I use Ubuntu 15.04. I have both a nvidia graphics card and an
  integrated intel one. Sometimes, I boot my system without nvidia card,
  and sometimes with both. Until recently this setup worked correctly,
  so that when the nvidia card was enabled, the system would boot up
  using nvidia drivers, and in the other case it would use intel card.
  Now I am unable to boot up without nvidia card. Booting with it
  removes the xorg.conf file (it is empty). When I reboot with intel
  card only,  Xorg fails to start because of the following error:

  Data incomplete in file /etc/X11/xorg.conf 
  Undefined Screen "nvidia" referenced by ServerLayout "layout". 

  I check gpu-manager's logs, and indeed it claims to have generated the
  xorg.conf file:

  ==gpu-manager.log==
  log_file: /var/log/gpu-manager.log
  last_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
  new_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
  grep dmesg status 0
  dmesg status 0 == 0? Yes
  grep dmesg status 256
  dmesg status 256 == 0? No
  Is nvidia loaded? no
  Was nvidia unloaded? yes
  Is nvidia blacklisted? no
  Is fglrx loaded? no
  Was fglrx unloaded? no
  Is fglrx blacklisted? no
  Is intel loaded? yes
  Is radeon loaded? no
  Is radeon blacklisted? no
  Is nouveau loaded? no
  Is nouveau blacklisted? yes
  Is fglrx kernel module available? no
  Is nvidia kernel module available? yes
  Vendor/Device Id: 8086:412
  BusID "PCI:0@0:2:0"
  Is boot vga? yes
  Vendor/Device Id: 10de:1184
  BusID "PCI:1@0:0:0"
  Is boot vga? no
  The device is a pci passthrough. Skipping...
  Skipping "/dev/dri/card0", driven by "i915"
  Skipping "/dev/dri/card0", driven by "i915"
  Found "/dev/dri/card0", driven by "i915"
  output 0:
  	DisplayPort connector
  Number of connected outputs for /dev/dri/card0: 1
  Does it require offloading? yes
  last cards number = 1
  Has amd? no
  Has intel? yes
  Has nvidia? no
  How many cards? 1
  Has the system changed? No
  main_arch_path x86_64-linux-gnu, other_arch_path i386-linux-gnu
  Current alternative: /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf
  Current core alternative: (null)
  Is nvidia enabled? no
  Is fglrx enabled? no
  Is mesa enabled? yes
  Is pxpress enabled? no
  Is prime enabled? no
  Is nvidia available? no
  Is fglrx available? no
  Is fglrx-core available? no
  Is mesa available? yes
  Is pxpress available? no
  Is prime available? no
  Single card detected
  PRIME detected
  pci bus from dmesg status 0
  can't open /sys/module/nvidia/version
  /sys/class/dmi/id/product_version="To Be Filled By O.E.M."
  /sys/class/dmi/id/product_name="To Be Filled By O.E.M."
  1st try: bbswitch without quirks
  Loading bbswitch with "load_state=-1 unload_state=1" parameters
  2nd try: bbswitch with quirks
  Loading bbswitch with "load_state=-1 unload_state=1 skip_optimus_dsm=1" parameters
  Warning: can't load bbswitch, switching between GPUs won't work
  Selecting nvidia
  Error: no alternative found for nvidia
  Error: failed to enable the driver
  Selecting mesa
  /usr/bin/update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf
  update-alternatives status 0
  Calling ldconfig
  ldconfig status 0
  /usr/bin/update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf
  update-alternatives status 0
  Calling ldconfig
  ldconfig status 0
  Error: no alternative found for unblacklist
  Removing xorg.conf. Path: /etc/X11/xorg.conf
  can't access /etc/X11/xorg.conf
  Check failed
  Removing xorg.conf. Path: /etc/X11/xorg.conf
  Moved /etc/X11/xorg.conf to /etc/X11/xorg.conf.08152015
  Regenerating xorg.conf. Path: /etc/X11/xorg.conf
  No need to change the current bbswitch status
  ===================

  However, the generated xorg.conf file is clearly invalid:

  =====xorg.conf=====
  Section "ServerLayout"
      Identifier "layout"
      Screen 0 "nvidia"
      Inactive "intel"
  EndSection

  Section "Device"
      Identifier "intel"
      Driver "intel"
      BusID "PCI:0@0:2:0"
      Option "AccelMethod" "SNA"
  EndSection

  Section "Screen"
      Identifier "intel"
      Device "intel"
  EndSection
  ===================

  So Xorg is right to report the error that screen "nvidia" is
  undefined. Apparently the xorg.conf file that gpu-manager generated is
  incorrect, and this issue prevents me from booting my system
  correctly, and this makes me believe this bug may be considered
  significant.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-drivers-common/+bug/1485236/+subscriptions


Follow ups