OSDN Git Service

fuse: don't use atomic kmap
authorMiklos Szeredi <mszeredi@suse.cz>
Mon, 12 Jul 2010 12:41:40 +0000 (14:41 +0200)
committerMiklos Szeredi <mszeredi@suse.cz>
Mon, 12 Jul 2010 12:41:40 +0000 (14:41 +0200)
commit7909b1c64078087ac153fb47a2f50793fe3ee7d0
tree83367ca6286f3ebfee8b94533152848e7529e9fb
parent815c4163b6c8ebf8152f42b0a5fd015cfdcedc78
fuse: don't use atomic kmap

Don't use atomic kmap for mapping userspace buffers in device
read/write/splice.

This is necessary because the next patch (adding store notify)
requires that caller of fuse_copy_page() may sleep between
invocations.  The simplest way to ensure this is to change the atomic
kmaps to non-atomic ones.

Thankfully architectures where kmap() is not a no-op are going out of
fashion, so we can ignore the (probably negligible) performance impact
of this change.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/fuse/dev.c