diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2009-06-16 14:52:13 -0400 | 
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-06-17 00:36:36 -0400 | 
| commit | 608ba50bd0225d95469154feba8f00a6457848c1 (patch) | |
| tree | 1407a612c92301fb9ddf0bbef2afbc4d5b2e4597 /fs | |
| parent | ee450f796f6c4f3a563c914cb93ccfa91a1f7580 (diff) | |
Cleanup of adfs headers
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/adfs/adfs.h | 55 | ||||
| -rw-r--r-- | fs/adfs/dir.c | 8 | ||||
| -rw-r--r-- | fs/adfs/dir_f.c | 8 | ||||
| -rw-r--r-- | fs/adfs/dir_fplus.c | 8 | ||||
| -rw-r--r-- | fs/adfs/file.c | 4 | ||||
| -rw-r--r-- | fs/adfs/inode.c | 10 | ||||
| -rw-r--r-- | fs/adfs/map.c | 6 | ||||
| -rw-r--r-- | fs/adfs/super.c | 17 | 
8 files changed, 57 insertions, 59 deletions
| diff --git a/fs/adfs/adfs.h b/fs/adfs/adfs.h index a6665f37f456..9cc18775b832 100644 --- a/fs/adfs/adfs.h +++ b/fs/adfs/adfs.h @@ -1,3 +1,6 @@ +#include <linux/fs.h> +#include <linux/adfs_fs.h> +  /* Internal data structures for ADFS */  #define ADFS_FREE_FRAG		 0 @@ -17,6 +20,58 @@  struct buffer_head;  /* + * adfs file system inode data in memory + */ +struct adfs_inode_info { +	loff_t		mmu_private; +	unsigned long	parent_id;	/* object id of parent		*/ +	__u32		loadaddr;	/* RISC OS load address		*/ +	__u32		execaddr;	/* RISC OS exec address		*/ +	unsigned int	filetype;	/* RISC OS file type		*/ +	unsigned int	attr;		/* RISC OS permissions		*/ +	unsigned int	stamped:1;	/* RISC OS file has date/time	*/ +	struct inode vfs_inode; +}; + +/* + * Forward-declare this + */ +struct adfs_discmap; +struct adfs_dir_ops; + +/* + * ADFS file system superblock data in memory + */ +struct adfs_sb_info { +	struct adfs_discmap *s_map;	/* bh list containing map		 */ +	struct adfs_dir_ops *s_dir;	/* directory operations			 */ + +	uid_t		s_uid;		/* owner uid				 */ +	gid_t		s_gid;		/* owner gid				 */ +	umode_t		s_owner_mask;	/* ADFS owner perm -> unix perm		 */ +	umode_t		s_other_mask;	/* ADFS other perm -> unix perm		 */ + +	__u32		s_ids_per_zone;	/* max. no ids in one zone		 */ +	__u32		s_idlen;	/* length of ID in map			 */ +	__u32		s_map_size;	/* sector size of a map			 */ +	unsigned long	s_size;		/* total size (in blocks) of this fs	 */ +	signed int	s_map2blk;	/* shift left by this for map->sector	 */ +	unsigned int	s_log2sharesize;/* log2 share size			 */ +	__le32		s_version;	/* disc format version			 */ +	unsigned int	s_namelen;	/* maximum number of characters in name	 */ +}; + +static inline struct adfs_sb_info *ADFS_SB(struct super_block *sb) +{ +	return sb->s_fs_info; +} + +static inline struct adfs_inode_info *ADFS_I(struct inode *inode) +{ +	return container_of(inode, struct adfs_inode_info, vfs_inode); +} + +/*   * Directory handling   */  struct adfs_dir { diff --git a/fs/adfs/dir.c b/fs/adfs/dir.c index 4d4073447d1a..23aa52f548a0 100644 --- a/fs/adfs/dir.c +++ b/fs/adfs/dir.c @@ -9,15 +9,7 @@   *   *  Common directory handling for ADFS   */ -#include <linux/errno.h> -#include <linux/fs.h> -#include <linux/adfs_fs.h> -#include <linux/time.h> -#include <linux/stat.h> -#include <linux/spinlock.h>  #include <linux/smp_lock.h> -#include <linux/buffer_head.h>		/* for file_fsync() */ -  #include "adfs.h"  /* diff --git a/fs/adfs/dir_f.c b/fs/adfs/dir_f.c index 31df6adf0de6..bafc71222e25 100644 --- a/fs/adfs/dir_f.c +++ b/fs/adfs/dir_f.c @@ -9,15 +9,7 @@   *   *  E and F format directory handling   */ -#include <linux/errno.h> -#include <linux/fs.h> -#include <linux/adfs_fs.h> -#include <linux/time.h> -#include <linux/stat.h> -#include <linux/spinlock.h>  #include <linux/buffer_head.h> -#include <linux/string.h> -  #include "adfs.h"  #include "dir_f.h" diff --git a/fs/adfs/dir_fplus.c b/fs/adfs/dir_fplus.c index 139e0f345f18..1796bb352d05 100644 --- a/fs/adfs/dir_fplus.c +++ b/fs/adfs/dir_fplus.c @@ -7,15 +7,7 @@   * it under the terms of the GNU General Public License version 2 as   * published by the Free Software Foundation.   */ -#include <linux/errno.h> -#include <linux/fs.h> -#include <linux/adfs_fs.h> -#include <linux/time.h> -#include <linux/stat.h> -#include <linux/spinlock.h>  #include <linux/buffer_head.h> -#include <linux/string.h> -  #include "adfs.h"  #include "dir_fplus.h" diff --git a/fs/adfs/file.c b/fs/adfs/file.c index 8224d54a2afb..005ea34d1758 100644 --- a/fs/adfs/file.c +++ b/fs/adfs/file.c @@ -19,10 +19,6 @@   *   *  adfs regular file handling primitives              */ -#include <linux/fs.h> -#include <linux/buffer_head.h>			/* for file_fsync() */ -#include <linux/adfs_fs.h> -  #include "adfs.h"  const struct file_operations adfs_file_operations = { diff --git a/fs/adfs/inode.c b/fs/adfs/inode.c index 05b3a677201d..798cb071d132 100644 --- a/fs/adfs/inode.c +++ b/fs/adfs/inode.c @@ -7,17 +7,8 @@   * it under the terms of the GNU General Public License version 2 as   * published by the Free Software Foundation.   */ -#include <linux/errno.h> -#include <linux/fs.h> -#include <linux/adfs_fs.h> -#include <linux/time.h> -#include <linux/stat.h> -#include <linux/string.h> -#include <linux/mm.h>  #include <linux/smp_lock.h> -#include <linux/module.h>  #include <linux/buffer_head.h> -  #include "adfs.h"  /* @@ -395,4 +386,3 @@ int adfs_write_inode(struct inode *inode, int wait)  	unlock_kernel();  	return ret;  } -MODULE_LICENSE("GPL"); diff --git a/fs/adfs/map.c b/fs/adfs/map.c index 568081b93f73..d1a5932bb0f1 100644 --- a/fs/adfs/map.c +++ b/fs/adfs/map.c @@ -7,14 +7,8 @@   * it under the terms of the GNU General Public License version 2 as   * published by the Free Software Foundation.   */ -#include <linux/errno.h> -#include <linux/fs.h> -#include <linux/adfs_fs.h> -#include <linux/spinlock.h>  #include <linux/buffer_head.h> -  #include <asm/unaligned.h> -  #include "adfs.h"  /* diff --git a/fs/adfs/super.c b/fs/adfs/super.c index 0ec5aaf47aa7..aad92f0a1048 100644 --- a/fs/adfs/super.c +++ b/fs/adfs/super.c @@ -8,26 +8,12 @@   * published by the Free Software Foundation.   */  #include <linux/module.h> -#include <linux/errno.h> -#include <linux/fs.h> -#include <linux/adfs_fs.h> -#include <linux/slab.h> -#include <linux/time.h> -#include <linux/stat.h> -#include <linux/string.h>  #include <linux/init.h>  #include <linux/buffer_head.h> -#include <linux/vfs.h>  #include <linux/parser.h> -#include <linux/bitops.h>  #include <linux/mount.h>  #include <linux/seq_file.h> - -#include <asm/uaccess.h> -#include <asm/system.h> - -#include <stdarg.h> - +#include <linux/statfs.h>  #include "adfs.h"  #include "dir_f.h"  #include "dir_fplus.h" @@ -534,3 +520,4 @@ static void __exit exit_adfs_fs(void)  module_init(init_adfs_fs)  module_exit(exit_adfs_fs) +MODULE_LICENSE("GPL"); | 
