1/* SPDX-License-Identifier: GPL-2.0-or-later */
2#ifndef SQUASHFS_FS_I
3#define SQUASHFS_FS_I
4/*
5 * Squashfs
6 *
7 * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007, 2008
8 * Phillip Lougher <phillip@squashfs.org.uk>
9 *
10 * squashfs_fs_i.h
11 */
12
13struct squashfs_inode_info {
14	u64		start;
15	int		offset;
16	u64		xattr;
17	unsigned int	xattr_size;
18	int		xattr_count;
19	union {
20		struct {
21			u64		fragment_block;
22			int		fragment_size;
23			int		fragment_offset;
24			u64		block_list_start;
25		};
26		struct {
27			u64		dir_idx_start;
28			int		dir_idx_offset;
29			int		dir_idx_cnt;
30			int		parent;
31		};
32	};
33	struct inode	vfs_inode;
34};
35
36
37static inline struct squashfs_inode_info *squashfs_i(struct inode *inode)
38{
39	return container_of(inode, struct squashfs_inode_info, vfs_inode);
40}
41#endif
42