| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | /*
 | 
					
						
							| 
									
										
										
										
											2005-11-02 14:58:39 +11:00
										 |  |  |  * Copyright (c) 2000-2005 Silicon Graphics, Inc. | 
					
						
							|  |  |  |  * All Rights Reserved. | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2005-11-02 14:58:39 +11:00
										 |  |  |  * This program is free software; you can redistribute it and/or | 
					
						
							|  |  |  |  * modify it under the terms of the GNU General Public License as | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  |  * published by the Free Software Foundation. | 
					
						
							|  |  |  |  * | 
					
						
							| 
									
										
										
										
											2005-11-02 14:58:39 +11:00
										 |  |  |  * This program is distributed in the hope that it would 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. | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2005-11-02 14:58:39 +11:00
										 |  |  |  * You should have received a copy of the GNU General Public License | 
					
						
							|  |  |  |  * along with this program; if not, write the Free Software Foundation, | 
					
						
							|  |  |  |  * Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  |  */ | 
					
						
							|  |  |  | #ifndef __XFS_SUPER_H__
 | 
					
						
							|  |  |  | #define __XFS_SUPER_H__
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-07-17 04:04:28 -07:00
										 |  |  | #include <linux/exportfs.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #ifdef CONFIG_XFS_QUOTA
 | 
					
						
							| 
									
										
										
										
											2012-03-13 08:52:37 +00:00
										 |  |  | extern int xfs_qm_init(void); | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | extern void xfs_qm_exit(void); | 
					
						
							|  |  |  | #else
 | 
					
						
							| 
									
										
										
										
											2012-03-13 08:52:37 +00:00
										 |  |  | # define xfs_qm_init()	(0)
 | 
					
						
							|  |  |  | # define xfs_qm_exit()	do { } while (0)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef CONFIG_XFS_POSIX_ACL
 | 
					
						
							|  |  |  | # define XFS_ACL_STRING		"ACLs, "
 | 
					
						
							|  |  |  | # define set_posix_acl_flag(sb)	((sb)->s_flags |= MS_POSIXACL)
 | 
					
						
							|  |  |  | #else
 | 
					
						
							|  |  |  | # define XFS_ACL_STRING
 | 
					
						
							|  |  |  | # define set_posix_acl_flag(sb)	do { } while (0)
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-04-17 16:50:22 +10:00
										 |  |  | #define XFS_SECURITY_STRING	"security attributes, "
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #ifdef CONFIG_XFS_RT
 | 
					
						
							|  |  |  | # define XFS_REALTIME_STRING	"realtime, "
 | 
					
						
							|  |  |  | #else
 | 
					
						
							|  |  |  | # define XFS_REALTIME_STRING
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #if XFS_BIG_BLKNOS
 | 
					
						
							|  |  |  | # if XFS_BIG_INUMS
 | 
					
						
							|  |  |  | #  define XFS_BIGFS_STRING	"large block/inode numbers, "
 | 
					
						
							|  |  |  | # else
 | 
					
						
							|  |  |  | #  define XFS_BIGFS_STRING	"large block numbers, "
 | 
					
						
							|  |  |  | # endif
 | 
					
						
							|  |  |  | #else
 | 
					
						
							|  |  |  | # define XFS_BIGFS_STRING
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef DEBUG
 | 
					
						
							|  |  |  | # define XFS_DBG_STRING		"debug"
 | 
					
						
							|  |  |  | #else
 | 
					
						
							|  |  |  | # define XFS_DBG_STRING		"no debug"
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-06 18:41:15 +00:00
										 |  |  | #define XFS_VERSION_STRING	"SGI XFS"
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #define XFS_BUILD_OPTIONS	XFS_ACL_STRING \
 | 
					
						
							|  |  |  | 				XFS_SECURITY_STRING \ | 
					
						
							|  |  |  | 				XFS_REALTIME_STRING \ | 
					
						
							|  |  |  | 				XFS_BIGFS_STRING \ | 
					
						
							|  |  |  | 				XFS_DBG_STRING /* DBG must be last */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | struct xfs_inode; | 
					
						
							|  |  |  | struct xfs_mount; | 
					
						
							|  |  |  | struct xfs_buftarg; | 
					
						
							|  |  |  | struct block_device; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extern __uint64_t xfs_max_file_offset(unsigned int); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-10-08 21:56:04 +11:00
										 |  |  | extern void xfs_flush_inodes(struct xfs_mount *mp); | 
					
						
							| 
									
										
										
										
											2005-11-02 10:26:59 +11:00
										 |  |  | extern void xfs_blkdev_issue_flush(struct xfs_buftarg *); | 
					
						
							| 
									
										
										
										
											2012-09-20 10:32:38 -03:00
										 |  |  | extern xfs_agnumber_t xfs_set_inode32(struct xfs_mount *); | 
					
						
							|  |  |  | extern xfs_agnumber_t xfs_set_inode64(struct xfs_mount *); | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-21 16:42:17 -07:00
										 |  |  | extern const struct export_operations xfs_export_operations; | 
					
						
							| 
									
										
										
										
											2010-05-13 17:53:20 -07:00
										 |  |  | extern const struct xattr_handler *xfs_xattr_handlers[]; | 
					
						
							| 
									
										
										
										
											2009-09-21 17:01:09 -07:00
										 |  |  | extern const struct quotactl_ops xfs_quotactl_operations; | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-08-30 17:21:30 +10:00
										 |  |  | #define XFS_M(sb)		((struct xfs_mount *)((sb)->s_fs_info))
 | 
					
						
							| 
									
										
										
										
											2007-08-30 17:19:57 +10:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #endif	/* __XFS_SUPER_H__ */
 |