cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

romfs_fs.h (1238B)


      1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
      2#ifndef __LINUX_ROMFS_FS_H
      3#define __LINUX_ROMFS_FS_H
      4
      5#include <linux/types.h>
      6#include <linux/fs.h>
      7
      8/* The basic structures of the romfs filesystem */
      9
     10#define ROMBSIZE BLOCK_SIZE
     11#define ROMBSBITS BLOCK_SIZE_BITS
     12#define ROMBMASK (ROMBSIZE-1)
     13#define ROMFS_MAGIC 0x7275
     14
     15#define ROMFS_MAXFN 128
     16
     17#define __mkw(h,l) (((h)&0x00ff)<< 8|((l)&0x00ff))
     18#define __mkl(h,l) (((h)&0xffff)<<16|((l)&0xffff))
     19#define __mk4(a,b,c,d) cpu_to_be32(__mkl(__mkw(a,b),__mkw(c,d)))
     20#define ROMSB_WORD0 __mk4('-','r','o','m')
     21#define ROMSB_WORD1 __mk4('1','f','s','-')
     22
     23/* On-disk "super block" */
     24
     25struct romfs_super_block {
     26	__be32 word0;
     27	__be32 word1;
     28	__be32 size;
     29	__be32 checksum;
     30	char name[0];		/* volume name */
     31};
     32
     33/* On disk inode */
     34
     35struct romfs_inode {
     36	__be32 next;		/* low 4 bits see ROMFH_ */
     37	__be32 spec;
     38	__be32 size;
     39	__be32 checksum;
     40	char name[0];
     41};
     42
     43#define ROMFH_TYPE 7
     44#define ROMFH_HRD 0
     45#define ROMFH_DIR 1
     46#define ROMFH_REG 2
     47#define ROMFH_SYM 3
     48#define ROMFH_BLK 4
     49#define ROMFH_CHR 5
     50#define ROMFH_SCK 6
     51#define ROMFH_FIF 7
     52#define ROMFH_EXEC 8
     53
     54/* Alignment */
     55
     56#define ROMFH_SIZE 16
     57#define ROMFH_PAD (ROMFH_SIZE-1)
     58#define ROMFH_MASK (~ROMFH_PAD)
     59
     60#endif