Sorry if I miss these are already stated, but I couldn't find in draft #4.

In 3.2 Errors, after the first paragraph:

   The underlying system call may return EINTR when the call is interrupted
   by a signal.  When it happens, unless otherwise noted, the SRFI procedures first
   call the registered Scheme signal handlers if necessary, then restart the system
   call as if it is  never interrupted.  In other words, they never raise syscall-error
   exception with errno/intr. 

In 3.9 Signal system, after the first paragraph:

   Inside a signal handler, you can execute any Scheme procedures, including
   raising an exceptions.  In general, this is realized by the runtime to record the incoming
   signal in the system's signal handler, and processing it at a "safe point" where
   execution of arbitrary Scheme expression is safe; for there's a severe restriciton
   in what you can do within the system's signal handler.   When a Scheme signal
   handler is executed, the same rule of signal masking as POSIX is applied.