2023-05-24 08:08:27 |
Ghadi Rahme |
bug |
|
|
added bug |
2023-05-24 08:10:48 |
Ghadi Rahme |
attachment added |
|
gdm3-logout-patch.debdiff https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2020641/+attachment/5675266/+files/gdm3-logout-patch.debdiff |
|
2023-05-24 08:10:58 |
Ghadi Rahme |
gdm3 (Ubuntu): importance |
Undecided |
High |
|
2023-05-24 08:15:19 |
Ubuntu Foundations Team Bug Bot |
tags |
|
patch |
|
2023-05-24 08:15:25 |
Ubuntu Foundations Team Bug Bot |
bug |
|
|
added subscriber Ubuntu Sponsors Team |
2023-05-24 08:27:17 |
Daniel van Vugt |
gdm3 (Ubuntu): status |
New |
In Progress |
|
2023-05-24 08:27:22 |
Daniel van Vugt |
bug |
|
|
added subscriber Daniel van Vugt |
2023-05-30 19:00:17 |
Fabio Augusto Miranda Martins |
bug |
|
|
added subscriber Sebastien Bacher |
2023-05-31 08:29:30 |
Ghadi Rahme |
nominated for series |
|
Ubuntu Jammy |
|
2023-05-31 08:29:30 |
Ghadi Rahme |
bug task added |
|
gdm3 (Ubuntu Jammy) |
|
2023-05-31 08:29:40 |
Ghadi Rahme |
gdm3 (Ubuntu Jammy): importance |
Undecided |
High |
|
2023-05-31 08:29:43 |
Ghadi Rahme |
gdm3 (Ubuntu Jammy): assignee |
|
Ghadi Rahme (ghadi-rahme) |
|
2023-05-31 08:29:54 |
Ghadi Rahme |
gdm3 (Ubuntu Jammy): status |
New |
In Progress |
|
2023-05-31 08:30:21 |
Ghadi Rahme |
nominated for series |
|
Ubuntu Mantic |
|
2023-05-31 08:30:21 |
Ghadi Rahme |
bug task added |
|
gdm3 (Ubuntu Mantic) |
|
2023-05-31 08:30:21 |
Ghadi Rahme |
nominated for series |
|
Ubuntu Lunar |
|
2023-05-31 08:30:21 |
Ghadi Rahme |
bug task added |
|
gdm3 (Ubuntu Lunar) |
|
2023-05-31 08:30:29 |
Ghadi Rahme |
gdm3 (Ubuntu Lunar): importance |
Undecided |
High |
|
2023-05-31 08:30:32 |
Ghadi Rahme |
gdm3 (Ubuntu Lunar): assignee |
|
Ghadi Rahme (ghadi-rahme) |
|
2023-05-31 08:30:57 |
Ghadi Rahme |
gdm3 (Ubuntu Lunar): status |
New |
In Progress |
|
2023-05-31 09:11:51 |
Ghadi Rahme |
attachment added |
|
gdm3-logout-patch-lunar.debdiff https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2020641/+attachment/5676936/+files/gdm3-logout-patch-lunar.debdiff |
|
2023-05-31 09:12:15 |
Ghadi Rahme |
attachment added |
|
gdm3-logout-patch-mantic.debdiff https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2020641/+attachment/5676937/+files/gdm3-logout-patch-mantic.debdiff |
|
2023-05-31 09:39:19 |
Daniel van Vugt |
gdm3 (Ubuntu Mantic): milestone |
ubuntu-22.04.2 |
mantic-updates |
|
2023-05-31 09:39:30 |
Daniel van Vugt |
gdm3 (Ubuntu Jammy): milestone |
|
ubuntu-22.04.3 |
|
2023-05-31 09:39:34 |
Daniel van Vugt |
gdm3 (Ubuntu Lunar): milestone |
|
lunar-updates |
|
2023-06-01 10:39:05 |
Sebastien Bacher |
gdm3 (Ubuntu Mantic): status |
In Progress |
Fix Committed |
|
2023-06-01 10:43:54 |
Sebastien Bacher |
gdm3 (Ubuntu Lunar): status |
In Progress |
Fix Committed |
|
2023-06-01 10:49:14 |
Sebastien Bacher |
gdm3 (Ubuntu Jammy): status |
In Progress |
Fix Committed |
|
2023-06-01 10:49:16 |
Sebastien Bacher |
removed subscriber Ubuntu Sponsors |
|
|
|
2023-06-01 14:37:20 |
Andreas Hasenack |
bug |
|
|
added subscriber Andreas Hasenack |
2023-06-01 14:39:56 |
Ghadi Rahme |
description |
gdm3 version: 42.0-1ubuntu7.22.04.2
Ubuntu version: Ubuntu 22.04.2 LTS
[Description]
Installing or removing snap packages through NICE DCV on AWS will cause the user to be kicked out of their session. The issue happens on machines running nvidia GPUs (passed through to a VM) with the GRID driver installed as well as the normal nvidia driver.
[Steps to reproduce]
Simply install or remove any snap through the snap store will trigger the issue, for example:
$ snap install skype
also running any of the following commands will also trigger the issue:
$ snap connect skype:opengl :opengl
$ snap disconnect skype:opengl :opengl
$ snap connect skype:camera :camera
$ snap disconnect skype:camera :camera
After further investigation I was able to pin down the issue to udev and could reproduce the issue by running the following command:
$ sudo udevadm trigger --parent-match=/sys/devices/pci0000:00/0000:00:1e.0/drm/card0
where "/sys/devices/pci0000:00/0000:00:1e.0/drm/card0" corresponds to the nvidia GPU of my instance.
A more generic way of triggering the issue would be running:
$ sudo udevadm trigger
[Solution]
I have investigated the issue and discovered that it lies within GDM3 in the "udev_is_settled" function (daemon/gdm-local-display-factory.c).
In the case where the udev is settled the line "g_clear_signal_handler (&factory->uevent_handler_id, factory->gudev_client);" at the end of the function is triggered however this is not the case when the function returns early and will lead to the user being logged out. In its current implementation there are three different return points before "g_clear_signal_handler" is executed where the udev devices would already have settled.
I have written a patch that fixes this issue by making sure the function "g_clear_signal_handler" is executed in all cases for which the udev is settled. |
gdm3 version: 42.0-1ubuntu7.22.04.2
Ubuntu version: Ubuntu 22.04.2 LTS
[Description]
Installing or removing snap packages through NICE DCV on AWS will cause the user to be kicked out of their session. The issue happens on machines running nvidia GPUs (passed through to a VM) with the GRID driver installed as well as the normal nvidia driver.
[Steps to reproduce]
Simply install or remove any snap through the snap store will trigger the issue, for example:
$ snap install skype
also running any of the following commands will also trigger the issue:
$ snap connect skype:opengl :opengl
$ snap disconnect skype:opengl :opengl
$ snap connect skype:camera :camera
$ snap disconnect skype:camera :camera
After further investigation I was able to pin down the issue to udev and could reproduce the issue by running the following command:
$ sudo udevadm trigger --parent-match=/sys/devices/pci0000:00/0000:00:1e.0/drm/card0
where "/sys/devices/pci0000:00/0000:00:1e.0/drm/card0" corresponds to the nvidia GPU of my instance.
A more generic way of triggering the issue would be running:
$ sudo udevadm trigger
[Solution]
I have investigated the issue and discovered that it lies within GDM3 in the "udev_is_settled" function (daemon/gdm-local-display-factory.c).
In the case where the udev is settled the line "g_clear_signal_handler (&factory->uevent_handler_id, factory->gudev_client);" at the end of the function is triggered however this is not the case when the function returns early and will lead to the user being logged out. In its current implementation there are three different return points before "g_clear_signal_handler" is executed where the udev devices would already have settled.
I have written a patch that fixes this issue by making sure the function "g_clear_signal_handler" is executed in all cases for which the udev is settled.
[possible regressions]
Excessive clearing of the signal handler might cause a case where it is not being re-initialized the next time it is needed. |
|
2023-06-01 14:54:54 |
Mauricio Faria de Oliveira |
nominated for series |
|
Ubuntu Kinetic |
|
2023-06-01 14:54:54 |
Mauricio Faria de Oliveira |
bug task added |
|
gdm3 (Ubuntu Kinetic) |
|
2023-06-01 14:55:00 |
Mauricio Faria de Oliveira |
gdm3 (Ubuntu Kinetic): status |
New |
Won't Fix |
|
2023-06-01 17:35:26 |
Andreas Hasenack |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2023-06-01 17:35:28 |
Andreas Hasenack |
bug |
|
|
added subscriber SRU Verification |
2023-06-01 17:35:33 |
Andreas Hasenack |
tags |
patch |
patch verification-needed verification-needed-lunar |
|
2023-06-01 17:36:32 |
Andreas Hasenack |
tags |
patch verification-needed verification-needed-lunar |
patch verification-needed verification-needed-jammy verification-needed-lunar |
|
2023-06-01 18:07:28 |
Launchpad Janitor |
gdm3 (Ubuntu Mantic): status |
Fix Committed |
Fix Released |
|
2023-06-01 20:21:45 |
Fabio Augusto Miranda Martins |
bug |
|
|
added subscriber Fabio Augusto Miranda Martins |
2023-06-01 21:20:36 |
Fabio Augusto Miranda Martins |
tags |
patch verification-needed verification-needed-jammy verification-needed-lunar |
patch verification-done-jammy verification-needed verification-needed-lunar |
|
2023-06-02 12:14:56 |
Andreas Hasenack |
tags |
patch verification-done-jammy verification-needed verification-needed-lunar |
patch verification-needed verification-needed-jammy verification-needed-lunar |
|
2023-06-02 13:51:57 |
Fabio Augusto Miranda Martins |
tags |
patch verification-needed verification-needed-jammy verification-needed-lunar |
patch verification-done-jammy verification-needed verification-needed-lunar |
|
2023-06-02 14:18:17 |
Ghadi Rahme |
description |
gdm3 version: 42.0-1ubuntu7.22.04.2
Ubuntu version: Ubuntu 22.04.2 LTS
[Description]
Installing or removing snap packages through NICE DCV on AWS will cause the user to be kicked out of their session. The issue happens on machines running nvidia GPUs (passed through to a VM) with the GRID driver installed as well as the normal nvidia driver.
[Steps to reproduce]
Simply install or remove any snap through the snap store will trigger the issue, for example:
$ snap install skype
also running any of the following commands will also trigger the issue:
$ snap connect skype:opengl :opengl
$ snap disconnect skype:opengl :opengl
$ snap connect skype:camera :camera
$ snap disconnect skype:camera :camera
After further investigation I was able to pin down the issue to udev and could reproduce the issue by running the following command:
$ sudo udevadm trigger --parent-match=/sys/devices/pci0000:00/0000:00:1e.0/drm/card0
where "/sys/devices/pci0000:00/0000:00:1e.0/drm/card0" corresponds to the nvidia GPU of my instance.
A more generic way of triggering the issue would be running:
$ sudo udevadm trigger
[Solution]
I have investigated the issue and discovered that it lies within GDM3 in the "udev_is_settled" function (daemon/gdm-local-display-factory.c).
In the case where the udev is settled the line "g_clear_signal_handler (&factory->uevent_handler_id, factory->gudev_client);" at the end of the function is triggered however this is not the case when the function returns early and will lead to the user being logged out. In its current implementation there are three different return points before "g_clear_signal_handler" is executed where the udev devices would already have settled.
I have written a patch that fixes this issue by making sure the function "g_clear_signal_handler" is executed in all cases for which the udev is settled.
[possible regressions]
Excessive clearing of the signal handler might cause a case where it is not being re-initialized the next time it is needed. |
gdm3 version: 42.0-1ubuntu7.22.04.2
Ubuntu version: Ubuntu 22.04.2 LTS
[Description]
Installing or removing snap packages through NICE DCV on AWS will cause the user to be kicked out of their session. The issue happens on machines running nvidia GPUs (passed through to a VM) with the GRID driver installed as well as the normal nvidia driver.
[Steps to reproduce]
Simply install or remove any snap through the snap store will trigger the issue, for example:
$ snap install skype
also running any of the following commands will also trigger the issue:
$ snap connect skype:opengl :opengl
$ snap disconnect skype:opengl :opengl
$ snap connect skype:camera :camera
$ snap disconnect skype:camera :camera
After further investigation I was able to pin down the issue to udev and could reproduce the issue by running the following command:
$ sudo udevadm trigger --parent-match=/sys/devices/pci0000:00/0000:00:1e.0/drm/card0
where "/sys/devices/pci0000:00/0000:00:1e.0/drm/card0" corresponds to the nvidia GPU of my instance.
A more generic way of triggering the issue would be running:
$ sudo udevadm trigger
[Solution]
I have investigated the issue and discovered that it lies within GDM3 in the "udev_is_settled" function (daemon/gdm-local-display-factory.c).
In the case where the udev is settled the line "g_clear_signal_handler (&factory->uevent_handler_id, factory->gudev_client);" at the end of the function is triggered however this is not the case when the function returns early and will lead to the user being logged out. In its current implementation there are three different return points before "g_clear_signal_handler" is executed where the udev devices would already have settled.
I have written a patch that fixes this issue by making sure the function "g_clear_signal_handler" is executed in all cases for which the udev is settled.
[possible regressions]
Excessive clearing of the signal handler might cause a case where it is not being re-initialized the next time it is needed.
[Base test plan]
This test plan is to make sure the issue listed in the description section is fixed.
1. Create a new nvidia accelerated VM instance on AWS with NICE DCV and the GRID driver (or normal driver) installed. Make sure the GPU is being fully passed through to the instance (do not slice the GPU).
2. Access the instance using the NICE DCV client and login.
3. Install any snap package (E.g $ snap install skype).
4. Verify there are no new sessions being launched with the user being gdm.
$ sudo loginctl
Also make sure that you don't get logged out of your own session.
5. Repeat step 4 while running the following command as well:
$ sudo udevadm trigger
6. If the current session stays active and no new sessions spawn while performing step 3 or 5, the test succeeded.
[Extra tests]
This test plan is a sanity check to make sure no regressions have been created.
1. Login to the session
2. Run a few applications (E.g: Nautilus, gedit, terminal, firefox, skype, libreoffice, mpv, vlc...) and use some on the built in features (E.g: the launcher, search...)
3. Switch sessions without terminating the current one.
4. Login as a separate user and repeat step 2
5. Go back to the first session and make sure everything behaves as expected
6. Switch to init 3:
$ init 3
and go back to init 5 afterwards:
$ init 5
7. If no issues were found, the test succeeded. |
|
2023-06-05 13:15:02 |
Heitor Alves de Siqueira |
bug |
|
|
added subscriber Heitor Alves de Siqueira |
2023-06-08 03:32:09 |
Daniel van Vugt |
tags |
patch verification-done-jammy verification-needed verification-needed-lunar |
patch verification-done-jammy verification-done-lunar verification-needed |
|
2023-06-08 03:34:35 |
Daniel van Vugt |
tags |
patch verification-done-jammy verification-done-lunar verification-needed |
patch verification-done-jammy verification-needed verification-needed-lunar |
|
2023-06-08 03:34:40 |
Daniel van Vugt |
gdm3 (Ubuntu Lunar): status |
Fix Committed |
Won't Fix |
|
2023-06-08 03:35:27 |
Daniel van Vugt |
gdm3 (Ubuntu Lunar): importance |
High |
Low |
|
2023-06-08 03:35:37 |
Daniel van Vugt |
gdm3 (Ubuntu Kinetic): importance |
Undecided |
Low |
|
2023-06-12 02:02:16 |
Daniel van Vugt |
gdm3 (Ubuntu Lunar): status |
Won't Fix |
Fix Committed |
|
2023-06-12 03:24:46 |
Daniel van Vugt |
tags |
patch verification-done-jammy verification-needed verification-needed-lunar |
patch verification-done-jammy verification-done-lunar verification-needed |
|
2023-06-14 13:22:59 |
Fabio Augusto Miranda Martins |
tags |
patch verification-done-jammy verification-done-lunar verification-needed |
patch verification-done verification-done-jammy verification-done-lunar |
|
2023-06-15 20:26:11 |
Launchpad Janitor |
gdm3 (Ubuntu Lunar): status |
Fix Committed |
Fix Released |
|
2023-06-15 20:26:15 |
Andreas Hasenack |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2023-06-15 20:26:32 |
Launchpad Janitor |
gdm3 (Ubuntu Jammy): status |
Fix Committed |
Fix Released |
|
2023-07-10 14:21:11 |
Ghadi Rahme |
attachment added |
|
[jammy]flush-signal-handler-on-udev-timeout.diff https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2020641/+attachment/5685189/+files/%5Bjammy%5Dflush-signal-handler-on-udev-timeout.diff |
|
2023-07-10 14:21:31 |
Ghadi Rahme |
attachment added |
|
[lunar]flush-signal-handler-on-udev-timeout.diff https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2020641/+attachment/5685190/+files/%5Blunar%5Dflush-signal-handler-on-udev-timeout.diff |
|
2023-07-10 14:21:47 |
Ghadi Rahme |
attachment added |
|
[mantic]flush-signal-handler-on-udev-timeout.diff https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2020641/+attachment/5685191/+files/%5Bmantic%5Dflush-signal-handler-on-udev-timeout.diff |
|