]> git.baikalelectronics.ru Git - kernel.git/commit
Squashfs: Generalise paging handling in the decompressors
authorPhillip Lougher <phillip@squashfs.org.uk>
Mon, 18 Nov 2013 02:59:12 +0000 (02:59 +0000)
committerPhillip Lougher <phillip@squashfs.org.uk>
Wed, 20 Nov 2013 03:59:01 +0000 (03:59 +0000)
commit43b336cbd10db52ec697347a0ea10e1925c3c432
treec70eb16cbec15e5bfa1db80c5f18e062673331a9
parente001c9be6ab0aea9424e884335b4421f15cf75f2
Squashfs: Generalise paging handling in the decompressors

Further generalise the decompressors by adding a page handler
abstraction.  This adds helpers to allow the decompressors
to access and process the output buffers in an implementation
independant manner.

This allows different types of output buffer to be passed
to the decompressors, with the implementation specific
aspects handled at decompression time, but without the
knowledge being held in the decompressor wrapper code.

This will allow the decompressors to handle Squashfs
cache buffers, and page cache pages.

This patch adds the abstraction and an implementation for
the caches.

Signed-off-by: Phillip Lougher <phillip@squashfs.org.uk>
Reviewed-by: Minchan Kim <minchan@kernel.org>
13 files changed:
fs/squashfs/block.c
fs/squashfs/cache.c
fs/squashfs/decompressor.c
fs/squashfs/decompressor.h
fs/squashfs/decompressor_multi.c
fs/squashfs/decompressor_multi_percpu.c
fs/squashfs/decompressor_single.c
fs/squashfs/lzo_wrapper.c
fs/squashfs/page_actor.h [new file with mode: 0644]
fs/squashfs/squashfs.h
fs/squashfs/squashfs_fs_sb.h
fs/squashfs/xz_wrapper.c
fs/squashfs/zlib_wrapper.c