SIGSEGV on 13.16.1 when running from Omnibus
A premium customer has reported facing segmentation fault after upgrading GitLab from 13.8.4 to 13.9.1.
The fault appears for all SSH operations performed via Git, and also affects a simple SSH login attempt as the git
user:
#########################################
# $ ssh -T git@hostname #
#########################################
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x8fa379]
goroutine 1 [running]:
gitlab.com/gitlab-org/gitlab-shell/internal/logger.Configure(0xc0000c2280)
/var/cache/omnibus/src/gitlab-shell/internal/logger/logger.go:26 +0x129
main.main()
/var/cache/omnibus/src/gitlab-shell/cmd/gitlab-shell/main.go:48 +0x162
Are any special configurations required to make the process work in 13.9 after the changes in 2a410f31?
It appears that we may not be validating the return from os.Executable()
before we attempt to print it out to stderr: https://gitlab.com/gitlab-org/gitlab-shell/-/blob/main/internal/logger/logger.go#L24-26?