Blame view

kernel/linux-imx6_3.14.28/fs/squashfs/squashfs.h 3.95 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
  /*
   * Squashfs - a compressed read only filesystem for Linux
   *
   * Copyright (c) 2002, 2003, 2004, 2005, 2006, 2007, 2008
   * Phillip Lougher <phillip@squashfs.org.uk>
   *
   * This program is free software; you can redistribute it and/or
   * modify it under the terms of the GNU General Public License
   * as published by the Free Software Foundation; either version 2,
   * or (at your option) any later version.
   *
   * This program is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   * GNU General Public License for more details.
   *
   * You should have received a copy of the GNU General Public License
   * along with this program; if not, write to the Free Software
   * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
   *
   * squashfs.h
   */
  
  #define TRACE(s, args...)	pr_debug("SQUASHFS: "s, ## args)
  
  #define ERROR(s, args...)	pr_err("SQUASHFS error: "s, ## args)
  
  #define WARNING(s, args...)	pr_warning("SQUASHFS: "s, ## args)
  
  /* block.c */
  extern int squashfs_read_data(struct super_block *, u64, int, u64 *,
  				struct squashfs_page_actor *);
  
  /* cache.c */
  extern struct squashfs_cache *squashfs_cache_init(char *, int, int);
  extern void squashfs_cache_delete(struct squashfs_cache *);
  extern struct squashfs_cache_entry *squashfs_cache_get(struct super_block *,
  				struct squashfs_cache *, u64, int);
  extern void squashfs_cache_put(struct squashfs_cache_entry *);
  extern int squashfs_copy_data(void *, struct squashfs_cache_entry *, int, int);
  extern int squashfs_read_metadata(struct super_block *, void *, u64 *,
  				int *, int);
  extern struct squashfs_cache_entry *squashfs_get_fragment(struct super_block *,
  				u64, int);
  extern struct squashfs_cache_entry *squashfs_get_datablock(struct super_block *,
  				u64, int);
  extern void *squashfs_read_table(struct super_block *, u64, int);
  
  /* decompressor.c */
  extern const struct squashfs_decompressor *squashfs_lookup_decompressor(int);
  extern void *squashfs_decompressor_setup(struct super_block *, unsigned short);
  
  /* decompressor_xxx.c */
  extern void *squashfs_decompressor_create(struct squashfs_sb_info *, void *);
  extern void squashfs_decompressor_destroy(struct squashfs_sb_info *);
  extern int squashfs_decompress(struct squashfs_sb_info *, struct buffer_head **,
  	int, int, int, struct squashfs_page_actor *);
  extern int squashfs_max_decompressors(void);
  
  /* export.c */
  extern __le64 *squashfs_read_inode_lookup_table(struct super_block *, u64, u64,
  				unsigned int);
  
  /* fragment.c */
  extern int squashfs_frag_lookup(struct super_block *, unsigned int, u64 *);
  extern __le64 *squashfs_read_fragment_index_table(struct super_block *,
  				u64, u64, unsigned int);
  
  /* file.c */
  void squashfs_copy_cache(struct page *, struct squashfs_cache_entry *, int,
  				int);
  
  /* file_xxx.c */
  extern int squashfs_readpage_block(struct page *, u64, int);
  
  /* id.c */
  extern int squashfs_get_id(struct super_block *, unsigned int, unsigned int *);
  extern __le64 *squashfs_read_id_index_table(struct super_block *, u64, u64,
  				unsigned short);
  
  /* inode.c */
  extern struct inode *squashfs_iget(struct super_block *, long long,
  				unsigned int);
  extern int squashfs_read_inode(struct inode *, long long);
  
  /* xattr.c */
  extern ssize_t squashfs_listxattr(struct dentry *, char *, size_t);
  
  /*
   * Inodes, files,  decompressor and xattr operations
   */
  
  /* dir.c */
  extern const struct file_operations squashfs_dir_ops;
  
  /* export.c */
  extern const struct export_operations squashfs_export_ops;
  
  /* file.c */
  extern const struct address_space_operations squashfs_aops;
  
  /* inode.c */
  extern const struct inode_operations squashfs_inode_ops;
  
  /* namei.c */
  extern const struct inode_operations squashfs_dir_inode_ops;
  
  /* symlink.c */
  extern const struct address_space_operations squashfs_symlink_aops;
  extern const struct inode_operations squashfs_symlink_inode_ops;
  
  /* xattr.c */
  extern const struct xattr_handler *squashfs_xattr_handlers[];