xfs_ioctl.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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. extern int
  21. xfs_ioc_space(
  22. struct xfs_inode *ip,
  23. struct inode *inode,
  24. struct file *filp,
  25. int ioflags,
  26. unsigned int cmd,
  27. xfs_flock64_t *bf);
  28. int
  29. xfs_ioc_swapext(
  30. xfs_swapext_t *sxp);
  31. extern int
  32. xfs_find_handle(
  33. unsigned int cmd,
  34. xfs_fsop_handlereq_t *hreq);
  35. extern int
  36. xfs_open_by_handle(
  37. struct file *parfilp,
  38. xfs_fsop_handlereq_t *hreq);
  39. extern int
  40. xfs_readlink_by_handle(
  41. struct file *parfilp,
  42. xfs_fsop_handlereq_t *hreq);
  43. extern int
  44. xfs_attrmulti_attr_get(
  45. struct inode *inode,
  46. unsigned char *name,
  47. unsigned char __user *ubuf,
  48. __uint32_t *len,
  49. __uint32_t flags);
  50. extern int
  51. xfs_attrmulti_attr_set(
  52. struct inode *inode,
  53. unsigned char *name,
  54. const unsigned char __user *ubuf,
  55. __uint32_t len,
  56. __uint32_t flags);
  57. extern int
  58. xfs_attrmulti_attr_remove(
  59. struct inode *inode,
  60. unsigned char *name,
  61. __uint32_t flags);
  62. extern struct dentry *
  63. xfs_handle_to_dentry(
  64. struct file *parfilp,
  65. void __user *uhandle,
  66. u32 hlen);
  67. extern long
  68. xfs_file_ioctl(
  69. struct file *filp,
  70. unsigned int cmd,
  71. unsigned long p);
  72. extern long
  73. xfs_file_compat_ioctl(
  74. struct file *file,
  75. unsigned int cmd,
  76. unsigned long arg);
  77. extern int
  78. xfs_set_dmattrs(
  79. struct xfs_inode *ip,
  80. u_int evmask,
  81. u_int16_t state);
  82. #endif