I seem to be having the same problem using gdm3 in stable (on x86_64). I get a large number of processes left running "gdm-session-worker [pam/gdm-password]", what looks like one for each time I have locked the screen over the past month. Eventually this builds up and I get:
gdm-session-worker[10407]: <5>AccountsService: Failed to monitor logind session changes: Too many open files gnome-session[1360]: (gnome-shell:1455): Gjs-WARNING **: JS ERROR: Failed to start verification for user: Gio.IOErrorEnum: Timeout was reached raphael gnome-session[1360]: ShellUserVerifier<._startService/<@resource:///org/gnome/shell/gdm/util.js:427 in /var/log/messages. When I manually kill the stalled processes I can log in again and I get: gdm-session-worker[1296]: <5>Freeing conversation 'gdm-password' with active job gdm-session-worker[1296]: <5>Freeing conversation 'gdm-password' with active job gdm-session-worker[1296]: <5>Freeing conversation 'gdm-password' with active job gdm-session-worker[1296]: <5>Freeing conversation 'gdm-password' with active job gdm-session-worker[1296]: <5>Freeing conversation 'gdm-password' with active job for each killed process. Here 1296 is their parent process. This should be relatively simple to replicate; just lock and unlock the screen a bunch of times until it stops working. Given the error message in /var/log/messages it should also be relatively easy to find in the code. HTH Cheers, - Martin