compress.h (1758047057dbe329be712a31b79db7151b5871f8) compress.h (10e5f6e482e18dcdee9a9b7ff1a66f4977dd1ec2)
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2019 HUAWEI, Inc.
4 * https://www.huawei.com/
5 */
6#ifndef __EROFS_FS_COMPRESS_H
7#define __EROFS_FS_COMPRESS_H
8
9#include "internal.h"
10
11struct z_erofs_decompress_req {
12 struct super_block *sb;
13 struct page **in, **out;
14
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2019 HUAWEI, Inc.
4 * https://www.huawei.com/
5 */
6#ifndef __EROFS_FS_COMPRESS_H
7#define __EROFS_FS_COMPRESS_H
8
9#include "internal.h"
10
11struct z_erofs_decompress_req {
12 struct super_block *sb;
13 struct page **in, **out;
14
15 unsigned short pageofs_out;
15 unsigned short pageofs_in, pageofs_out;
16 unsigned int inputsize, outputsize;
17
18 /* indicate the algorithm will be used for decompression */
19 unsigned int alg;
20 bool inplace_io, partial_decoding;
21};
22
23struct z_erofs_decompressor {

--- 58 unchanged lines hidden (view full) ---

82
83#define MNGD_MAPPING(sbi) ((sbi)->managed_cache->i_mapping)
84static inline bool erofs_page_is_managed(const struct erofs_sb_info *sbi,
85 struct page *page)
86{
87 return page->mapping == MNGD_MAPPING(sbi);
88}
89
16 unsigned int inputsize, outputsize;
17
18 /* indicate the algorithm will be used for decompression */
19 unsigned int alg;
20 bool inplace_io, partial_decoding;
21};
22
23struct z_erofs_decompressor {

--- 58 unchanged lines hidden (view full) ---

82
83#define MNGD_MAPPING(sbi) ((sbi)->managed_cache->i_mapping)
84static inline bool erofs_page_is_managed(const struct erofs_sb_info *sbi,
85 struct page *page)
86{
87 return page->mapping == MNGD_MAPPING(sbi);
88}
89
90int z_erofs_fixup_insize(struct z_erofs_decompress_req *rq, const char *padbuf,
91 unsigned int padbufsize);
90int z_erofs_decompress(struct z_erofs_decompress_req *rq,
91 struct page **pagepool);
92
93/* prototypes for specific algorithms */
94int z_erofs_lzma_decompress(struct z_erofs_decompress_req *rq,
95 struct page **pagepool);
96#endif
92int z_erofs_decompress(struct z_erofs_decompress_req *rq,
93 struct page **pagepool);
94
95/* prototypes for specific algorithms */
96int z_erofs_lzma_decompress(struct z_erofs_decompress_req *rq,
97 struct page **pagepool);
98#endif