On Sun, 1 Jan 2006, Greg Stark wrote:
>
> "Qingqing Zhou" <zhouqq@cs.toronto.edu> writes:
>
> > The problem of above is if a signal sneaks in, these syscalls will fail.
> > With a retry, we can fix it.
>
> It's a bit stickier than that but only a bit. If you just retry then you're
> saying users have to use kill -9 to get away from the situation. For some
> filesystem operations that may be the best we can do. But for most it ought to
> be possible to CHECK_FOR_INTERRUPTS() and handle the regular signals like C-c
> or kill -1 normally. Even having the single backend exit (to avoid file
> resource leaks) is nicer than having to restart the entire instance.
>
I understand put a CHECK_FOR_INTERRUPTS() in the retry-loop may make more
graceful stop, but it won't work in some cases -- notice that the io
routines we will patch can be used before the signal mechanism is setup.
Regards,
Qingqing