106 lines · c
1// SPDX-License-Identifier: GPL-2.02/*3 * Copyright (c) 2000-2005 Silicon Graphics, Inc.4 * All Rights Reserved.5 */6#ifndef __XFS_SUPER_H__7#define __XFS_SUPER_H__8 9#include <linux/exportfs.h>10 11#ifdef CONFIG_XFS_QUOTA12extern int xfs_qm_init(void);13extern void xfs_qm_exit(void);14# define XFS_QUOTA_STRING "quota, "15#else16# define xfs_qm_init() (0)17# define xfs_qm_exit() do { } while (0)18# define XFS_QUOTA_STRING19#endif20 21#ifdef CONFIG_XFS_POSIX_ACL22# define XFS_ACL_STRING "ACLs, "23# define set_posix_acl_flag(sb) ((sb)->s_flags |= SB_POSIXACL)24#else25# define XFS_ACL_STRING26# define set_posix_acl_flag(sb) do { } while (0)27#endif28 29#define XFS_SECURITY_STRING "security attributes, "30 31#ifdef CONFIG_XFS_RT32# define XFS_REALTIME_STRING "realtime, "33#else34# define XFS_REALTIME_STRING35#endif36 37#ifdef CONFIG_XFS_ONLINE_SCRUB38# define XFS_SCRUB_STRING "scrub, "39#else40# define XFS_SCRUB_STRING41#endif42 43#ifdef CONFIG_XFS_ONLINE_REPAIR44# define XFS_REPAIR_STRING "repair, "45#else46# define XFS_REPAIR_STRING47#endif48 49#ifdef CONFIG_XFS_WARN50# define XFS_WARN_STRING "verbose warnings, "51#else52# define XFS_WARN_STRING53#endif54 55#ifdef CONFIG_XFS_ASSERT_FATAL56# define XFS_ASSERT_FATAL_STRING "fatal assert, "57#else58# define XFS_ASSERT_FATAL_STRING59#endif60 61#ifdef DEBUG62# define XFS_DBG_STRING "debug"63#else64# define XFS_DBG_STRING "no debug"65#endif66 67#define XFS_VERSION_STRING "SGI XFS"68#define XFS_BUILD_OPTIONS XFS_ACL_STRING \69 XFS_SECURITY_STRING \70 XFS_REALTIME_STRING \71 XFS_SCRUB_STRING \72 XFS_REPAIR_STRING \73 XFS_WARN_STRING \74 XFS_QUOTA_STRING \75 XFS_ASSERT_FATAL_STRING \76 XFS_DBG_STRING /* DBG must be last */77 78#ifdef DEBUG79# define XFS_WQFLAGS(wqflags) (WQ_SYSFS | (wqflags))80#else81# define XFS_WQFLAGS(wqflags) (wqflags)82#endif83 84struct xfs_inode;85struct xfs_mount;86struct xfs_buftarg;87struct block_device;88 89extern void xfs_flush_inodes(struct xfs_mount *mp);90extern xfs_agnumber_t xfs_set_inode_alloc(struct xfs_mount *,91 xfs_agnumber_t agcount);92 93extern const struct export_operations xfs_export_operations;94extern const struct quotactl_ops xfs_quotactl_operations;95extern const struct dax_holder_operations xfs_dax_holder_operations;96 97extern void xfs_reinit_percpu_counters(struct xfs_mount *mp);98 99extern struct workqueue_struct *xfs_discard_wq;100 101#define XFS_M(sb) ((struct xfs_mount *)((sb)->s_fs_info))102 103struct dentry *xfs_debugfs_mkdir(const char *name, struct dentry *parent);104 105#endif /* __XFS_SUPER_H__ */106