ext2_fs.h (967B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * linux/include/linux/ext2_fs.h 4 * 5 * Copyright (C) 1992, 1993, 1994, 1995 6 * Remy Card (card@masi.ibp.fr) 7 * Laboratoire MASI - Institut Blaise Pascal 8 * Universite Pierre et Marie Curie (Paris VI) 9 * 10 * from 11 * 12 * linux/include/linux/minix_fs.h 13 * 14 * Copyright (C) 1991, 1992 Linus Torvalds 15 */ 16 17#ifndef _LINUX_EXT2_FS_H 18#define _LINUX_EXT2_FS_H 19 20#include <linux/types.h> 21#include <linux/magic.h> 22 23#define EXT2_NAME_LEN 255 24 25/* 26 * Maximal count of links to a file 27 */ 28#define EXT2_LINK_MAX 32000 29 30#define EXT2_SB_MAGIC_OFFSET 0x38 31#define EXT2_SB_BLOCKS_OFFSET 0x04 32#define EXT2_SB_BSIZE_OFFSET 0x18 33 34static inline u64 ext2_image_size(void *ext2_sb) 35{ 36 __u8 *p = ext2_sb; 37 if (*(__le16 *)(p + EXT2_SB_MAGIC_OFFSET) != cpu_to_le16(EXT2_SUPER_MAGIC)) 38 return 0; 39 return (u64)le32_to_cpup((__le32 *)(p + EXT2_SB_BLOCKS_OFFSET)) << 40 le32_to_cpup((__le32 *)(p + EXT2_SB_BSIZE_OFFSET)); 41} 42 43#endif /* _LINUX_EXT2_FS_H */