(Illustration by Gaich Muramatsu)
It probably matters which OS. I would advise running ktrace/ktruss to see which syscalls are made. Coda has the notion of opening a file for write, writes, and then a store. Offhand, I don't know why suspend would be an issues. A process may be in the kernel waiting on the venus pioctl for venus to respond to an operation, and that may fail to be interrupted. Also, I don't know if cp behaves well if some of the read/write syscalls return EINTR, or if it just gives up. It is unclear to me how and to what extent a good program is supposed to cope with this and retry. On BSD, grok sys/coda/*.c, the VFS rules, and signal delivery. After several weeks of just reading code, you will be enlightened and able to fix any issues that are present :-) -- Greg Troxel <gdt_at_ir.bbn.com>Received on 2004-05-18 18:27:41