int compress_chunk(const char *obd_name, const unsigned char *in,
unsigned int in_len, unsigned char *out,
unsigned int *out_len, enum ll_compr_type type,
- unsigned int lvl, unsigned int chunk_log_bits,
+ unsigned int lvl, unsigned int chunk_bits,
enum ll_compr_type *applied_type);
static inline struct page *mem_to_page(void *addr)
int compress_chunk(const char *obd_name, const unsigned char *in,
unsigned int in_len, unsigned char *out,
unsigned int *out_len, enum ll_compr_type type,
- unsigned int lvl, unsigned int chunk_log_bits,
+ unsigned int lvl, unsigned int chunk_bits,
enum ll_compr_type *applied_type)
{
struct ll_compr_hdr *llch;
llch->llch_header_size = sizeof(*llch);
llch->llch_compr_type = type;
llch->llch_compr_level = lvl;
- llch->llch_chunk_log_bits = chunk_log_bits;
+ /* chunk_log_bits from chunk_bits */
+ llch->llch_chunk_log_bits = chunk_bits - COMPR_CHUNK_MIN_BITS;
llch->llch_flags = 0;
llch->llch_compr_size = len;
llch->llch_compr_csum = 0;
#include "ofd_compress.h"
#include <lustre_compr.h>
#include <lustre_sec.h>
+
unsigned int dst_size;
int chunk_start = 0;
int pages_per_chunk;
- int chunk_log_bits;
int dest_buf_bits;
int src_buf_bits;
void *src = NULL;
clpage = oap2cl_page(brw_page2oap(pga[0]));
lvl = clpage->cp_comp_level;
type = clpage->cp_comp_type;
- chunk_log_bits = clpage->cp_chunk_log_bits;
chunk_bits = cl_page_compr_bits(clpage);
chunk_size = (1 << chunk_bits);
if (applied_type) {
compressed = compress_chunk(obd_name, src,
src_size, dst, &dst_size,
- type, lvl, chunk_log_bits,
+ type, lvl, chunk_bits,
&applied_type);
CDEBUG(D_SEC,
"%s: rc %d: inode "DFID"\n",