aboutsummaryrefslogtreecommitdiff
path: root/fs/squashfs/squashfs.h
diff options
context:
space:
mode:
authorAdrien Schildknecht <adriens@google.com>2016-11-07 12:41:42 -0800
committerMister Oyster <oysterized@gmail.com>2017-04-11 11:00:21 +0200
commit72a5ae8e69a24047109b2522c7f344ddaa359211 (patch)
tree317b173c051380f50d58f804cf19507cd99aa049 /fs/squashfs/squashfs.h
parentbbdb7dc21bb91b81d56a566eb43c9dccdf17ed01 (diff)
Squashfs: implement .readpages()
Squashfs does not implement .readpages(), so the kernel just repeatedly calls .readpage(). The readpages function tries to pack as much pages as possible in the same page actor so that only 1 read request is issued. Now that the read requests are asynchronous, the kernel can truly prefetch pages using its readahead algorithm. Signed-off-by: Adrien Schildknecht <adriens@google.com> Change-Id: I09590c56876e931acca9070505476a98ab1ca79e
Diffstat (limited to 'fs/squashfs/squashfs.h')
-rw-r--r--fs/squashfs/squashfs.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/squashfs/squashfs.h b/fs/squashfs/squashfs.h
index e9b75e27b..bb28f162f 100644
--- a/fs/squashfs/squashfs.h
+++ b/fs/squashfs/squashfs.h
@@ -76,8 +76,9 @@ extern __le64 *squashfs_read_fragment_index_table(struct super_block *,
void squashfs_copy_cache(struct page *, struct squashfs_cache_entry *, int,
int);
-/* file_xxx.c */
-extern int squashfs_readpage_block(struct page *, u64, int);
+/* file_direct.c */
+extern int squashfs_readpages_block(struct page *, struct list_head *,
+ unsigned int *, struct address_space *, int, u64, int);
/* id.c */
extern int squashfs_get_id(struct super_block *, unsigned int, unsigned int *);