allen-cell-animated / agave

Other
33 stars 5 forks source link

Server mode seg faulting on Ubuntu #132

Closed PaulHax closed 10 months ago

PaulHax commented 10 months ago

Description

When I run Agave with the --server option, I'm getting a Segmentation fault (core dumped). GUI runs fine when starting Agave without --server.

Kind of a personal problem, but perhaps folks have suggestions.

Command line output

/agave/build$ ./agave --server
[2023-08-30 10:12:24.295] [info] Logging Init DONE
[2023-08-30 10:12:24.350] [info] Allen Institute for Cell Science AGAVE 1.5.0
[2023-08-30 10:12:24.351] [info] Renderlib startup
[2023-08-30 10:12:24.357] [info] 4 devices found
[2023-08-30 10:12:24.357] [info] Device 0:
[2023-08-30 10:12:24.357] [info]   Vendor: NVIDIA
[2023-08-30 10:12:24.357] [info]   Renderer: NVIDIA RTX A2000 Laptop GPU
[2023-08-30 10:12:24.357] [info]   Extensions: EGL_NV_device_cuda EGL_EXT_device_drm EGL_EXT_device_drm_render_node EGL_EXT_device_query_name EGL_EXT_device_persistent_id
[2023-08-30 10:12:24.357] [info] Device 1:
[2023-08-30 10:12:24.357] [error] eglGetError 12300
[2023-08-30 10:12:24.357] [error] Error retreiving EGL_VENDOR string for device
[2023-08-30 10:12:24.357] [error] eglGetError 12300
[2023-08-30 10:12:24.357] [error] Error retreiving EGL_RENDERER_EXT string for device
[2023-08-30 10:12:24.357] [info]   Extensions: EGL_EXT_device_drm EGL_EXT_device_drm_render_node
[2023-08-30 10:12:24.357] [info] Device 2:
[2023-08-30 10:12:24.357] [error] eglGetError 12300
[2023-08-30 10:12:24.357] [error] Error retreiving EGL_VENDOR string for device
[2023-08-30 10:12:24.357] [error] eglGetError 12300
[2023-08-30 10:12:24.357] [error] Error retreiving EGL_RENDERER_EXT string for device
[2023-08-30 10:12:24.357] [info]   Extensions: EGL_EXT_device_drm EGL_EXT_device_drm_render_node
[2023-08-30 10:12:24.357] [info] Device 3:
[2023-08-30 10:12:24.357] [error] eglGetError 12300
[2023-08-30 10:12:24.357] [error] Error retreiving EGL_VENDOR string for device
[2023-08-30 10:12:24.357] [error] eglGetError 12300
[2023-08-30 10:12:24.357] [error] Error retreiving EGL_RENDERER_EXT string for device
[2023-08-30 10:12:24.357] [info]   Extensions: EGL_MESA_device_software EGL_EXT_device_drm_render_node
[2023-08-30 10:12:24.361] [info] created a egl context
[2023-08-30 10:12:24.374] [info] GL_VENDOR: NVIDIA Corporation
[2023-08-30 10:12:24.374] [info] GL_RENDERER: NVIDIA RTX A2000 Laptop GPU/PCIe/SSE2
[2023-08-30 10:12:24.374] [info] No server config file found openable at setup.cfg . Using defaults.
[2023-08-30 10:12:24.374] [info] Server is starting up with 4 max threads, listening on port 1235 ...
Segmentation fault (core dumped)

Environment

Ubuntu 22.04.3

toloudis commented 10 months ago

Are you building from current main branch or from a tagged release?

toloudis commented 10 months ago

The place where the error is being written is still in the middle of websocket server initialization, possibly related to where it looks for TLS certificates. That code hasn't been exercised very much and hasn't been changed lately. I'll do a fresh linux build today and see if I can repro here.

toloudis commented 10 months ago

Here's what you should roughly expect to see on linux:

[2023-08-30 09:26:42.540] [info] GL_VENDOR: NVIDIA Corporation
[2023-08-30 09:26:42.540] [info] GL_RENDERER: NVIDIA GeForce GTX 1080 Ti/PCIe/SSE2
[2023-08-30 09:26:42.540] [info] No server config file found openable at setup.cfg . Using defaults.
[2023-08-30 09:26:42.540] [info] Server is starting up with 4 max threads, listening on port 1235 ...
QIODevice::read (QFile, "mr.crt"): device not open
QIODevice::read (QFile, "mr.key"): device not open
[2023-08-30 09:26:42.555] [debug] QSslSocket::supportsSsl() = 1
[2023-08-30 09:26:42.555] [info] Server initialization done.
[2023-08-30 09:26:42.555] [info] Created server at working directory:/home/danielt/git/render/build
PaulHax commented 10 months ago

I'm building from branch main. Thanks for the tips.

toloudis commented 10 months ago

One more tip for now, check the Dockerfile for more thorough batch of linux dependencies to install.

toloudis commented 10 months ago

@PaulHax did you have any luck with this?

PaulHax commented 10 months ago

The Dockerfile builds and runs server mode just fine for me. Which is scratching the itch with minimal contortions for my development, for now.

Thank you for the help!