2 * (C) 2001 Clemson University and The University of Chicago
4 * See COPYING in top-level directory.
8 * Definitions of downcalls used in Linux kernel module.
15 * Sanitized the device-client core interaction
16 * for clean 32-64 bit usage
18 struct orangefs_io_response
{
22 struct orangefs_lookup_response
{
23 struct orangefs_object_kref refn
;
26 struct orangefs_create_response
{
27 struct orangefs_object_kref refn
;
30 struct orangefs_symlink_response
{
31 struct orangefs_object_kref refn
;
34 struct orangefs_getattr_response
{
35 struct ORANGEFS_sys_attr_s attributes
;
36 char link_target
[ORANGEFS_NAME_MAX
];
39 struct orangefs_mkdir_response
{
40 struct orangefs_object_kref refn
;
43 struct orangefs_statfs_response
{
51 struct orangefs_fs_mount_response
{
54 struct orangefs_khandle root_khandle
;
57 /* the getxattr response is the attribute value */
58 struct orangefs_getxattr_response
{
61 char val
[ORANGEFS_MAX_XATTR_VALUELEN
];
64 /* the listxattr response is an array of attribute names */
65 struct orangefs_listxattr_response
{
69 char key
[ORANGEFS_MAX_XATTR_LISTLEN
* ORANGEFS_MAX_XATTR_NAMELEN
];
72 __s32 lengths
[ORANGEFS_MAX_XATTR_LISTLEN
];
75 struct orangefs_param_response
{
82 #define PERF_COUNT_BUF_SIZE 4096
83 struct orangefs_perf_count_response
{
84 char buffer
[PERF_COUNT_BUF_SIZE
];
87 #define FS_KEY_BUF_SIZE 4096
88 struct orangefs_fs_key_response
{
91 char fs_key
[FS_KEY_BUF_SIZE
];
95 struct orangefs_features_response
{
99 struct orangefs_downcall_s
{
102 /* currently trailer is used only by readdir */
107 struct orangefs_io_response io
;
108 struct orangefs_lookup_response lookup
;
109 struct orangefs_create_response create
;
110 struct orangefs_symlink_response sym
;
111 struct orangefs_getattr_response getattr
;
112 struct orangefs_mkdir_response mkdir
;
113 struct orangefs_statfs_response statfs
;
114 struct orangefs_fs_mount_response fs_mount
;
115 struct orangefs_getxattr_response getxattr
;
116 struct orangefs_listxattr_response listxattr
;
117 struct orangefs_param_response param
;
118 struct orangefs_perf_count_response perf_count
;
119 struct orangefs_fs_key_response fs_key
;
120 struct orangefs_features_response features
;
125 * The readdir response comes in the trailer. It is followed by the
126 * directory entries as described in dir.c.
129 struct orangefs_readdir_response_s
{
131 __u64 directory_version
;
133 __u32 orangefs_dirent_outcount
;
136 #endif /* __DOWNCALL_H */