1 /* 2 * Copyright (c) 2008 Silicon Graphics, Inc. 3 * All Rights Reserved. 4 * 5 * This program is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it would be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program; if not, write the Free Software Foundation, 16 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 17 */ 18 #ifndef __XFS_IOCTL_H__ 19 #define __XFS_IOCTL_H__ 20 21 extern int 22 xfs_ioc_space( 23 struct xfs_inode *ip, 24 struct inode *inode, 25 struct file *filp, 26 int ioflags, 27 unsigned int cmd, 28 xfs_flock64_t *bf); 29 30 extern int 31 xfs_find_handle( 32 unsigned int cmd, 33 xfs_fsop_handlereq_t *hreq); 34 35 extern int 36 xfs_open_by_handle( 37 struct file *parfilp, 38 xfs_fsop_handlereq_t *hreq); 39 40 extern int 41 xfs_readlink_by_handle( 42 struct file *parfilp, 43 xfs_fsop_handlereq_t *hreq); 44 45 extern int 46 xfs_attrmulti_attr_get( 47 struct inode *inode, 48 unsigned char *name, 49 unsigned char __user *ubuf, 50 __uint32_t *len, 51 __uint32_t flags); 52 53 extern int 54 xfs_attrmulti_attr_set( 55 struct inode *inode, 56 unsigned char *name, 57 const unsigned char __user *ubuf, 58 __uint32_t len, 59 __uint32_t flags); 60 61 extern int 62 xfs_attrmulti_attr_remove( 63 struct inode *inode, 64 unsigned char *name, 65 __uint32_t flags); 66 67 extern struct dentry * 68 xfs_handle_to_dentry( 69 struct file *parfilp, 70 void __user *uhandle, 71 u32 hlen); 72 73 extern long 74 xfs_file_ioctl( 75 struct file *filp, 76 unsigned int cmd, 77 unsigned long p); 78 79 extern long 80 xfs_file_compat_ioctl( 81 struct file *file, 82 unsigned int cmd, 83 unsigned long arg); 84 85 #endif 86