Merge tag 'batadv-net-for-davem-20180717' of git://git.open-mesh.org/linux-merge
[linux-2.6-block.git] / fs / xfs / xfs_super.h
CommitLineData
0b61f8a4 1// SPDX-License-Identifier: GPL-2.0
1da177e4 2/*
7b718769
NS
3 * Copyright (c) 2000-2005 Silicon Graphics, Inc.
4 * All Rights Reserved.
1da177e4
LT
5 */
6#ifndef __XFS_SUPER_H__
7#define __XFS_SUPER_H__
8
a5694255
CH
9#include <linux/exportfs.h>
10
1da177e4 11#ifdef CONFIG_XFS_QUOTA
a05931ce 12extern int xfs_qm_init(void);
1da177e4 13extern void xfs_qm_exit(void);
1da177e4 14#else
a05931ce
CH
15# define xfs_qm_init() (0)
16# define xfs_qm_exit() do { } while (0)
1da177e4
LT
17#endif
18
19#ifdef CONFIG_XFS_POSIX_ACL
20# define XFS_ACL_STRING "ACLs, "
1751e8a6 21# define set_posix_acl_flag(sb) ((sb)->s_flags |= SB_POSIXACL)
1da177e4
LT
22#else
23# define XFS_ACL_STRING
24# define set_posix_acl_flag(sb) do { } while (0)
25#endif
26
f7d3c347 27#define XFS_SECURITY_STRING "security attributes, "
1da177e4
LT
28
29#ifdef CONFIG_XFS_RT
30# define XFS_REALTIME_STRING "realtime, "
31#else
32# define XFS_REALTIME_STRING
33#endif
34
494370cc
ES
35#ifdef CONFIG_XFS_ONLINE_SCRUB
36# define XFS_SCRUB_STRING "scrub, "
37#else
38# define XFS_SCRUB_STRING
39#endif
40
1da177e4
LT
41#ifdef DEBUG
42# define XFS_DBG_STRING "debug"
43#else
44# define XFS_DBG_STRING "no debug"
45#endif
46
668332e5 47#define XFS_VERSION_STRING "SGI XFS"
1da177e4
LT
48#define XFS_BUILD_OPTIONS XFS_ACL_STRING \
49 XFS_SECURITY_STRING \
50 XFS_REALTIME_STRING \
494370cc 51 XFS_SCRUB_STRING \
1da177e4
LT
52 XFS_DBG_STRING /* DBG must be last */
53
1da177e4
LT
54struct xfs_inode;
55struct xfs_mount;
56struct xfs_buftarg;
57struct block_device;
58
ddeb14f4 59extern void xfs_quiesce_attr(struct xfs_mount *mp);
9aa05000 60extern void xfs_flush_inodes(struct xfs_mount *mp);
f538d4da 61extern void xfs_blkdev_issue_flush(struct xfs_buftarg *);
12c3f05c
ES
62extern xfs_agnumber_t xfs_set_inode_alloc(struct xfs_mount *,
63 xfs_agnumber_t agcount);
1da177e4 64
39655164 65extern const struct export_operations xfs_export_operations;
46e58764 66extern const struct xattr_handler *xfs_xattr_handlers[];
0d54b217 67extern const struct quotactl_ops xfs_quotactl_operations;
1da177e4 68
5681ca40
DC
69extern void xfs_reinit_percpu_counters(struct xfs_mount *mp);
70
4560e78f
CH
71extern struct workqueue_struct *xfs_discard_wq;
72
b267ce99 73#define XFS_M(sb) ((struct xfs_mount *)((sb)->s_fs_info))
b09cc771 74
1da177e4 75#endif /* __XFS_SUPER_H__ */