1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Copyright (c) 2006-2007 Silicon Graphics, Inc. 4*4882a593Smuzhiyun * All Rights Reserved. 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun #ifndef __XFS_FILESTREAM_H__ 7*4882a593Smuzhiyun #define __XFS_FILESTREAM_H__ 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun struct xfs_mount; 10*4882a593Smuzhiyun struct xfs_inode; 11*4882a593Smuzhiyun struct xfs_bmalloca; 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun int xfs_filestream_mount(struct xfs_mount *mp); 14*4882a593Smuzhiyun void xfs_filestream_unmount(struct xfs_mount *mp); 15*4882a593Smuzhiyun void xfs_filestream_deassociate(struct xfs_inode *ip); 16*4882a593Smuzhiyun xfs_agnumber_t xfs_filestream_lookup_ag(struct xfs_inode *ip); 17*4882a593Smuzhiyun int xfs_filestream_new_ag(struct xfs_bmalloca *ap, xfs_agnumber_t *agp); 18*4882a593Smuzhiyun int xfs_filestream_peek_ag(struct xfs_mount *mp, xfs_agnumber_t agno); 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun static inline int xfs_inode_is_filestream(struct xfs_inode * ip)21*4882a593Smuzhiyunxfs_inode_is_filestream( 22*4882a593Smuzhiyun struct xfs_inode *ip) 23*4882a593Smuzhiyun { 24*4882a593Smuzhiyun return (ip->i_mount->m_flags & XFS_MOUNT_FILESTREAMS) || 25*4882a593Smuzhiyun (ip->i_d.di_flags & XFS_DIFLAG_FILESTREAM); 26*4882a593Smuzhiyun } 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #endif /* __XFS_FILESTREAM_H__ */ 29