Hi, I've noticed that when a thread is asleep and (gc) or scm_gc() is called, it gets awoken. It can be demonstrated with the following example: > (call-with-new-thread (lambda() (while #t (display "tick!\n") (sleep 5)))) ;; <= this is 5 seconds! > (gc) tick! ;; this happens immediately after each call to gc! This behaviour is both unexpected and undocumented, so I consider it a bug.