Aside from being the right place, we depend on schan_get_buffer() not returning a buffer if there's no space left in schan_imp_recv() / schan_imp_send().