brintos

brintos / linux-shallow public Read only

0
0
Text · 766 B · f2ec427 Raw
39 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#ifndef _BCACHEFS_SUBVOLUME_TYPES_H3#define _BCACHEFS_SUBVOLUME_TYPES_H4 5#include "darray.h"6 7typedef DARRAY(u32) snapshot_id_list;8 9#define IS_ANCESTOR_BITMAP	12810 11struct snapshot_t {12	u32			parent;13	u32			skip[3];14	u32			depth;15	u32			children[2];16	u32			subvol; /* Nonzero only if a subvolume points to this node: */17	u32			tree;18	u32			equiv;19	unsigned long		is_ancestor[BITS_TO_LONGS(IS_ANCESTOR_BITMAP)];20};21 22struct snapshot_table {23	struct rcu_head		rcu;24	size_t			nr;25#ifndef RUST_BINDGEN26	DECLARE_FLEX_ARRAY(struct snapshot_t, s);27#else28	struct snapshot_t	s[0];29#endif30};31 32typedef struct {33	/* we can't have padding in this struct: */34	u64		subvol;35	u64		inum;36} subvol_inum;37 38#endif /* _BCACHEFS_SUBVOLUME_TYPES_H */39