linux/fs/squashfs/decompressor_multi.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 *  Copyright (c) 2013
 *  Minchan Kim <[email protected]>
 */
#include <linux/types.h>
#include <linux/mutex.h>
#include <linux/slab.h>
#include <linux/bio.h>
#include <linux/sched.h>
#include <linux/wait.h>
#include <linux/cpumask.h>

#include "squashfs_fs.h"
#include "squashfs_fs_sb.h"
#include "decompressor.h"
#include "squashfs.h"

/*
 * This file implements multi-threaded decompression in the
 * decompressor framework
 */


/*
 * The reason that multiply two is that a CPU can request new I/O
 * while it is waiting previous request.
 */
#define MAX_DECOMPRESSOR


static int squashfs_max_decompressors(void)
{}

struct squashfs_stream {};


struct decomp_stream {};


static void put_decomp_stream(struct decomp_stream *decomp_strm,
				struct squashfs_stream *stream)
{}

static void *squashfs_decompressor_create(struct squashfs_sb_info *msblk,
				void *comp_opts)
{}


static void squashfs_decompressor_destroy(struct squashfs_sb_info *msblk)
{}


static struct decomp_stream *get_decomp_stream(struct squashfs_sb_info *msblk,
					struct squashfs_stream *stream)
{}


static int squashfs_decompress(struct squashfs_sb_info *msblk, struct bio *bio,
			int offset, int length,
			struct squashfs_page_actor *output)
{}

const struct squashfs_decompressor_thread_ops squashfs_decompressor_multi =;