fuse: fix fuse_retrieve
authorMiklos Szeredi <mszeredi@suse.cz>
Tue, 13 Dec 2011 09:36:59 +0000 (10:36 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 21 Dec 2011 20:58:34 +0000 (12:58 -0800)
commit3425a017beef04b5152fb6c3c7b2b2768473ed21
treeb61e4d58ae003c9275d9bd3e888ca34c4af7d8a3
parent91bcbb691f0dfe96fe385ba174fc3966049733ae
fuse: fix fuse_retrieve

commit 48706d0a91583d08c56e7ef2a7602d99c8d4133f upstream.

Fix two bugs in fuse_retrieve():

 - retrieving more than one page would yield repeated instances of the
   first page

 - if more than FUSE_MAX_PAGES_PER_REQ pages were requested than the
   request page array would overflow

fuse_retrieve() was added in 2.6.36 and these bugs had been there since the
beginning.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/fuse/dev.c