Messages in this thread | | | Date | Mon, 06 Sep 2004 14:45:38 +0200 | From | Gunnar Ritter <> | Subject | Re: [PATCH 1/3] copyfile: generic_sendpage |
| |
Andrew Morton <akpm@osdl.org> wrote:
> I discussed file->file sendfile with Linus a while back and he said > > > I think it was about doing a 2GB file-file sendfile, and see your system > > grind to a halt without being able to kill it. > > > > That said, we have some of the same problems with just regular read/write > > too. sendfile just makes it easier. > > > > We should probably make read/write be interruptible by _fatal_ signals. > > It would require a new task state, though (TASK_KILLABLE or something, and > > it would show up as a normal 'D' state). > > I don't know how much of a problem this is in practice
It is an even more serious problem in my experience. I have been using sendfile() in my cp command at <http://heirloom.sourceforge.net> for quite some time, and I quickly decided to send files separated in some decently sized blocks. Otherwise if a whole file is sent at once and the source file is e.g. on an uncached floppy disk, cp will become uninterruptible for about a minute, which is a serious usability flaw. The user might discover that he is copying the wrong file, or he might simply change his mind and like to abort the copy or whatever. A performance gain of only 10 % is neglegible in comparison to this problem. Thus I think if copyfile() would not be interruptible by SIGINT and friends, its practical value would be quite limited.
Gunnar - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |