⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 format40.h

📁 reiser4progs ReiserFS V4 ReiserFs官方已经关闭 这个是1.0.6 2006-02-22发布的 给需要的朋友
💻 H
字号:
/* Copyright (C) 2001-2005 by Hans Reiser, licensing governed by   reiser4progs/COPYING.      format40.h -- reiser4 disk-format plugin. */#ifndef FORMAT40_H#define FORMAT40_H#include <aal/libaal.h>#include <reiser4/plugin.h>#define FORMAT40_MAGIC "ReIsEr40FoRmAt"#define FORMAT40_BLOCKNR(blksize) \        (REISER4_MASTER_BLOCKNR(blksize) + 1)#define SUPER(entity) (&((format40_t *)entity)->super)#define MAGIC_SIZE 16/* The greatest supported format40 version number */#define FORMAT40_VERSION PLUGIN_LIBRARY_VERSION/* This flag indicates that backup should be updated   (the update is performed by fsck) */#define FORMAT40_UPDATE_BACKUP  (1 << 31)typedef struct format40_super {	d64_t sb_block_count;	d64_t sb_free_blocks;	d64_t sb_root_block;		/* These 2 fields are for oid data. */	d64_t sb_oid[2];		d64_t sb_flushes;    	d32_t sb_mkfs_id;	char sb_magic[MAGIC_SIZE];	d16_t sb_tree_height;	d16_t sb_policy;	d64_t sb_flags;		d32_t sb_version;		char sb_unused[428];} __attribute__((packed)) format40_super_t;typedef struct format40 {	reiser4_format_plug_t *plug;	uint32_t state;	uint32_t blksize;		aal_device_t *device;	format40_super_t super;} format40_t;#ifndef ENABLE_MINIMALtypedef struct format40_backup {	char sb_magic[MAGIC_SIZE];	d64_t sb_block_count;	d32_t sb_mkfs_id;	d16_t sb_policy;	d64_t sb_flags;	d32_t sb_version;	d64_t sb_reserved;} __attribute__((packed)) format40_backup_t;#endifextern reiser4_format_plug_t format40_plug;extern reiser4_core_t *format40_core;#define get_sb_mkfs_id(sb)		aal_get_le32(sb, sb_mkfs_id)#define set_sb_mkfs_id(sb, val)		aal_set_le32(sb, sb_mkfs_id, val)#define get_sb_block_count(sb)		aal_get_le64(sb, sb_block_count)#define set_sb_block_count(sb, val)	aal_set_le64(sb, sb_block_count, val)#define get_sb_free_blocks(sb)		aal_get_le64(sb, sb_free_blocks)#define set_sb_free_blocks(sb, val)	aal_set_le64(sb, sb_free_blocks, val)#define get_sb_root_block(sb)		aal_get_le64(sb, sb_root_block)#define set_sb_root_block(sb, val)	aal_set_le64(sb, sb_root_block, val)#define get_sb_policy(sb)		aal_get_le16(sb, sb_policy)#define set_sb_policy(sb, val)		aal_set_le16(sb, sb_policy, val)/* FIXME: Should not be here, oid's stuff. */#define get_sb_oid(sb)			aal_get_le64(sb, sb_oid[0])#define get_sb_file_count(sb)		aal_get_le64(sb, sb_oid[1])#define get_sb_flushes(sb)		aal_get_le64(sb, sb_flushes)#define set_sb_flushes(sb, val)		aal_set_le64(sb, sb_flushes, val)#define get_sb_tree_height(sb)		aal_get_le16(sb, sb_tree_height)#define set_sb_tree_height(sb, val)	aal_set_le16(sb, sb_tree_height, val)#define get_sb_flags(sb)		aal_get_le64(sb, sb_flags)#define set_sb_flags(sb, val)		aal_set_le64(sb, sb_flags, val)#define get_sb_version(sb)	\	(aal_get_le32(sb, sb_version) & ~FORMAT40_UPDATE_BACKUP)#define set_sb_version(sb, val)		aal_set_le32(sb, sb_version, val)#define sb_update_backup(sb)	\	(aal_get_le32(sb, sb_version) & FORMAT40_UPDATE_BACKUP)#define FORMAT40_KEY_LARGE		0#define format40_mkdirty(entity) \	(((format40_t *)entity)->state |= (1 << ENTITY_DIRTY))#define format40_mkclean(entity) \	(((format40_t *)entity)->state &= ~(1 << ENTITY_DIRTY))#ifndef ENABLE_MINIMALextern void format40_set_key(reiser4_format_ent_t *entity, rid_t key);extern rid_t format40_get_key(reiser4_format_ent_t *entity);#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -