Sometimes when the mesa GPU driver for your GPU refuses to load on your GPU (for valid reasons, like not supporting the chipset) gdm refuses to start.
But this can also mean that you are stuck in a boot loop, because systemd will auto restart your display manager, which is normally what you want to happen after it crashed.
If you are stuck like this and can't access a tty there is always:
`systemd.unit=multi-user.target`
you can add when booting your kernel so you drop into a login shell.