Does FUSE use threads?

When starting from 'C mode' and then doing Guile things, the thread needs to be prepared to deal with that - scm_init_guile (IIRC) does both initialisation and preparing the thread.

For temporarily going to 'Guile mode', there is scm_with_guile (IIRC). Specifics are in the manual. So, you could initialise Guile in main, and use IIUC scm_with_guile from handlers invoked from threads created by FUSE.

Also, don't call Scheme things from signal handlers (I don't know if that's happening here). It often implicitly assumes it isn't done from signal handlers.

Best regards,
Maxime Devos

Reply via email to