1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 21da177e4SLinus Torvalds /* 31da177e4SLinus Torvalds * linux/include/linux/ext2_fs.h 41da177e4SLinus Torvalds * 51da177e4SLinus Torvalds * Copyright (C) 1992, 1993, 1994, 1995 61da177e4SLinus Torvalds * Remy Card (card@masi.ibp.fr) 71da177e4SLinus Torvalds * Laboratoire MASI - Institut Blaise Pascal 81da177e4SLinus Torvalds * Universite Pierre et Marie Curie (Paris VI) 91da177e4SLinus Torvalds * 101da177e4SLinus Torvalds * from 111da177e4SLinus Torvalds * 121da177e4SLinus Torvalds * linux/include/linux/minix_fs.h 131da177e4SLinus Torvalds * 141da177e4SLinus Torvalds * Copyright (C) 1991, 1992 Linus Torvalds 151da177e4SLinus Torvalds */ 161da177e4SLinus Torvalds 171da177e4SLinus Torvalds #ifndef _LINUX_EXT2_FS_H 181da177e4SLinus Torvalds #define _LINUX_EXT2_FS_H 191da177e4SLinus Torvalds 201da177e4SLinus Torvalds #include <linux/types.h> 21e18fa700SJeff Garzik #include <linux/magic.h> 221da177e4SLinus Torvalds 23f7699f2bSAl Viro #define EXT2_NAME_LEN 255 241da177e4SLinus Torvalds 251da177e4SLinus Torvalds /* 261da177e4SLinus Torvalds * Maximal count of links to a file 271da177e4SLinus Torvalds */ 281da177e4SLinus Torvalds #define EXT2_LINK_MAX 32000 291da177e4SLinus Torvalds 3039429c5eSAl Viro #define EXT2_SB_MAGIC_OFFSET 0x38 3139429c5eSAl Viro #define EXT2_SB_BLOCKS_OFFSET 0x04 3239429c5eSAl Viro #define EXT2_SB_BSIZE_OFFSET 0x18 3339429c5eSAl Viro ext2_image_size(void * ext2_sb)3439429c5eSAl Virostatic inline u64 ext2_image_size(void *ext2_sb) 3539429c5eSAl Viro { 3639429c5eSAl Viro __u8 *p = ext2_sb; 3739429c5eSAl Viro if (*(__le16 *)(p + EXT2_SB_MAGIC_OFFSET) != cpu_to_le16(EXT2_SUPER_MAGIC)) 3839429c5eSAl Viro return 0; 3939429c5eSAl Viro return (u64)le32_to_cpup((__le32 *)(p + EXT2_SB_BLOCKS_OFFSET)) << 4039429c5eSAl Viro le32_to_cpup((__le32 *)(p + EXT2_SB_BSIZE_OFFSET)); 4139429c5eSAl Viro } 4239429c5eSAl Viro 431da177e4SLinus Torvalds #endif /* _LINUX_EXT2_FS_H */ 44