ubuntu user Hon Weng Chong has emailed me as he continues to investigate the 
problem.
He believes he has proof that it is is GDM configuration issue and has provided 
the following fix


Hey Tim,

I figured out a hack solution to the GDM prime issue. If you replace
/lib/systemd/system/gdm3.service with this file:

https://gist.github.com/hwchong/b3634b387e91b38d355a0500ffecfc7d

and /etc/X11/xorg.conf with this:

https://gist.github.com/hwchong/28d7c70aafd62a0d3114c5746da7da36

You should be able to use Prime Sync with your Intel graphics card and
have an external monitor connected to the Nvidia GPU without using
LightDM.

Cheers,
Hon


His proposed changes to xorg are probably not significant. He is proposing to 
add this to nvidia options, but this can be done via the GUI or command line.

    Option "metamodes" "nvidia-auto-select +0+0
{ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"



The revised /lib/systemd/system/gdm3.service he proposes is
is
--> Compared to Fedora 27's config, changes seem to be the addition of 
ExecStartPre=/usr/bin/xinit /usr/share/gdm/generate-config
.
.
.
RestartSec=1s
ExecReload=/usr/share/gdm/generate-config


[Unit]
Description=GNOME Display Manager

# replaces the getty
Conflicts=getty@tty1.service
After=getty@tty1.service

# replaces plymouth-quit since it quits plymouth on its own
Conflicts=plymouth-quit.service
After=plymouth-quit.service

# Needs all the dependencies of the services it's replacing
# pulled from getty@.service and plymouth-quit.service
# (except for plymouth-quit-wait.service since it waits until
# plymouth is quit, which we do)
After=rc-local.service plymouth-start.service systemd-user-sessions.service

# GDM takes responsibility for stopping plymouth, so if it fails
# for any reason, make sure plymouth still stops
OnFailure=plymouth-quit.service

[Service]
ExecStartPre=/usr/bin/xinit /usr/share/gdm/generate-config
ExecStart=/usr/sbin/gdm3
KillMode=mixed
Restart=always
RestartSec=1s
IgnoreSIGPIPE=no
BusName=org.gnome.DisplayManager
StandardOutput=syslog
StandardError=inherit
EnvironmentFile=-/etc/default/locale
ExecReload=/usr/share/gdm/generate-config
ExecReload=/bin/kill -SIGHUP $MAINPID

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

Title:
  gdm3, hybrid nvidia with modeset=1, no external monitors detected

Status in gnome-shell package in Ubuntu:
  New

Bug description:
  Context:
  17.10 development packages, nvidia binary driver 375, modeset=1 for the 
nvidia driver.
  ubuntu desktop (gnome shell), fresh install
  ThinkPad W520 in Nvidia Optimus bios mode.
  Nvidia profile.

  Result:
  no external monitors are detected.
  xrandr does not even list them as disconnected (normally it would list five 
external disconnected monitors)

  
  lsmod 
  shows that nvidia driver is loaded
  and the modesetting is working at some level because there is no tearing on 
the laptop panel

  
  Note: modeset=1 is the only way to get flicker-free graphics on the laptop 
panel. modeset=1 is not the default setting but it is highly desirable. 

  It works if lightdm is used which is why I have reported this against gdm3
  My sessions in this configuration have mostly crashed after a few minutes 
with a gdm3 fail whale message in syslog but nothing else looks interesting.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1716857/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to