linux/include/linux/ext2_fs.h
<<
>>
Prefs
   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 */
  44