Blame view
fs/orangefs/upcall.h
6.62 KB
f7ab093f7
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
/* * (C) 2001 Clemson University and The University of Chicago * * See COPYING in top-level directory. */ #ifndef __UPCALL_H #define __UPCALL_H /* * Sanitized this header file to fix * 32-64 bit interaction issues between * client-core and device */ |
8bb8aefd5
|
15 |
struct orangefs_io_request_s { |
9c2bcf288
|
16 |
__s32 __pad1; |
f7ab093f7
|
17 18 |
__s32 buf_index; __s32 count; |
9c2bcf288
|
19 |
__s32 __pad2; |
f7ab093f7
|
20 |
__s64 offset; |
8bb8aefd5
|
21 22 |
struct orangefs_object_kref refn; enum ORANGEFS_io_type io_type; |
f7ab093f7
|
23 24 |
__s32 readahead_size; }; |
8bb8aefd5
|
25 |
struct orangefs_lookup_request_s { |
f7ab093f7
|
26 27 |
__s32 sym_follow; __s32 __pad1; |
8bb8aefd5
|
28 |
struct orangefs_object_kref parent_refn; |
47b4948fd
|
29 |
char d_name[ORANGEFS_NAME_MAX]; |
f7ab093f7
|
30 |
}; |
8bb8aefd5
|
31 32 33 |
struct orangefs_create_request_s { struct orangefs_object_kref parent_refn; struct ORANGEFS_sys_attr_s attributes; |
47b4948fd
|
34 |
char d_name[ORANGEFS_NAME_MAX]; |
f7ab093f7
|
35 |
}; |
8bb8aefd5
|
36 37 38 |
struct orangefs_symlink_request_s { struct orangefs_object_kref parent_refn; struct ORANGEFS_sys_attr_s attributes; |
47b4948fd
|
39 40 |
char entry_name[ORANGEFS_NAME_MAX]; char target[ORANGEFS_NAME_MAX]; |
f7ab093f7
|
41 |
}; |
8bb8aefd5
|
42 43 |
struct orangefs_getattr_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
44 45 46 |
__u32 mask; __u32 __pad1; }; |
8bb8aefd5
|
47 48 49 |
struct orangefs_setattr_request_s { struct orangefs_object_kref refn; struct ORANGEFS_sys_attr_s attributes; |
f7ab093f7
|
50 |
}; |
8bb8aefd5
|
51 52 |
struct orangefs_remove_request_s { struct orangefs_object_kref parent_refn; |
47b4948fd
|
53 |
char d_name[ORANGEFS_NAME_MAX]; |
f7ab093f7
|
54 |
}; |
8bb8aefd5
|
55 56 57 |
struct orangefs_mkdir_request_s { struct orangefs_object_kref parent_refn; struct ORANGEFS_sys_attr_s attributes; |
47b4948fd
|
58 |
char d_name[ORANGEFS_NAME_MAX]; |
f7ab093f7
|
59 |
}; |
8bb8aefd5
|
60 61 |
struct orangefs_readdir_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
62 63 64 65 |
__u64 token; __s32 max_dirent_count; __s32 buf_index; }; |
8bb8aefd5
|
66 67 |
struct orangefs_readdirplus_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
68 69 70 71 72 73 |
__u64 token; __s32 max_dirent_count; __u32 mask; __s32 buf_index; __s32 __pad1; }; |
8bb8aefd5
|
74 75 76 |
struct orangefs_rename_request_s { struct orangefs_object_kref old_parent_refn; struct orangefs_object_kref new_parent_refn; |
47b4948fd
|
77 78 |
char d_old_name[ORANGEFS_NAME_MAX]; char d_new_name[ORANGEFS_NAME_MAX]; |
f7ab093f7
|
79 |
}; |
8bb8aefd5
|
80 |
struct orangefs_statfs_request_s { |
f7ab093f7
|
81 82 83 |
__s32 fs_id; __s32 __pad1; }; |
8bb8aefd5
|
84 85 |
struct orangefs_truncate_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
86 87 |
__s64 size; }; |
6eaff8c77
|
88 |
struct orangefs_ra_cache_flush_request_s { |
8bb8aefd5
|
89 |
struct orangefs_object_kref refn; |
f7ab093f7
|
90 |
}; |
8bb8aefd5
|
91 92 |
struct orangefs_fs_mount_request_s { char orangefs_config_server[ORANGEFS_MAX_SERVER_ADDR_LEN]; |
f7ab093f7
|
93 |
}; |
8bb8aefd5
|
94 |
struct orangefs_fs_umount_request_s { |
f7ab093f7
|
95 96 |
__s32 id; __s32 fs_id; |
8bb8aefd5
|
97 |
char orangefs_config_server[ORANGEFS_MAX_SERVER_ADDR_LEN]; |
f7ab093f7
|
98 |
}; |
8bb8aefd5
|
99 100 |
struct orangefs_getxattr_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
101 102 |
__s32 key_sz; __s32 __pad1; |
8bb8aefd5
|
103 |
char key[ORANGEFS_MAX_XATTR_NAMELEN]; |
f7ab093f7
|
104 |
}; |
8bb8aefd5
|
105 106 107 |
struct orangefs_setxattr_request_s { struct orangefs_object_kref refn; struct ORANGEFS_keyval_pair keyval; |
f7ab093f7
|
108 109 110 |
__s32 flags; __s32 __pad1; }; |
8bb8aefd5
|
111 112 |
struct orangefs_listxattr_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
113 114 115 116 |
__s32 requested_count; __s32 __pad1; __u64 token; }; |
8bb8aefd5
|
117 118 |
struct orangefs_removexattr_request_s { struct orangefs_object_kref refn; |
f7ab093f7
|
119 120 |
__s32 key_sz; __s32 __pad1; |
8bb8aefd5
|
121 |
char key[ORANGEFS_MAX_XATTR_NAMELEN]; |
f7ab093f7
|
122 |
}; |
8bb8aefd5
|
123 |
struct orangefs_op_cancel_s { |
f7ab093f7
|
124 125 |
__u64 op_tag; }; |
8bb8aefd5
|
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
struct orangefs_fsync_request_s { struct orangefs_object_kref refn; }; enum orangefs_param_request_type { ORANGEFS_PARAM_REQUEST_SET = 1, ORANGEFS_PARAM_REQUEST_GET = 2 }; enum orangefs_param_request_op { ORANGEFS_PARAM_REQUEST_OP_ACACHE_TIMEOUT_MSECS = 1, ORANGEFS_PARAM_REQUEST_OP_ACACHE_HARD_LIMIT = 2, ORANGEFS_PARAM_REQUEST_OP_ACACHE_SOFT_LIMIT = 3, ORANGEFS_PARAM_REQUEST_OP_ACACHE_RECLAIM_PERCENTAGE = 4, ORANGEFS_PARAM_REQUEST_OP_PERF_TIME_INTERVAL_SECS = 5, ORANGEFS_PARAM_REQUEST_OP_PERF_HISTORY_SIZE = 6, ORANGEFS_PARAM_REQUEST_OP_PERF_RESET = 7, ORANGEFS_PARAM_REQUEST_OP_NCACHE_TIMEOUT_MSECS = 8, ORANGEFS_PARAM_REQUEST_OP_NCACHE_HARD_LIMIT = 9, ORANGEFS_PARAM_REQUEST_OP_NCACHE_SOFT_LIMIT = 10, ORANGEFS_PARAM_REQUEST_OP_NCACHE_RECLAIM_PERCENTAGE = 11, ORANGEFS_PARAM_REQUEST_OP_STATIC_ACACHE_TIMEOUT_MSECS = 12, ORANGEFS_PARAM_REQUEST_OP_STATIC_ACACHE_HARD_LIMIT = 13, ORANGEFS_PARAM_REQUEST_OP_STATIC_ACACHE_SOFT_LIMIT = 14, ORANGEFS_PARAM_REQUEST_OP_STATIC_ACACHE_RECLAIM_PERCENTAGE = 15, ORANGEFS_PARAM_REQUEST_OP_CLIENT_DEBUG = 16, ORANGEFS_PARAM_REQUEST_OP_CCACHE_TIMEOUT_SECS = 17, ORANGEFS_PARAM_REQUEST_OP_CCACHE_HARD_LIMIT = 18, ORANGEFS_PARAM_REQUEST_OP_CCACHE_SOFT_LIMIT = 19, ORANGEFS_PARAM_REQUEST_OP_CCACHE_RECLAIM_PERCENTAGE = 20, ORANGEFS_PARAM_REQUEST_OP_CAPCACHE_TIMEOUT_SECS = 21, ORANGEFS_PARAM_REQUEST_OP_CAPCACHE_HARD_LIMIT = 22, ORANGEFS_PARAM_REQUEST_OP_CAPCACHE_SOFT_LIMIT = 23, ORANGEFS_PARAM_REQUEST_OP_CAPCACHE_RECLAIM_PERCENTAGE = 24, ORANGEFS_PARAM_REQUEST_OP_TWO_MASK_VALUES = 25, |
a6dff80a9
|
161 162 163 |
ORANGEFS_PARAM_REQUEST_OP_READAHEAD_SIZE = 26, ORANGEFS_PARAM_REQUEST_OP_READAHEAD_COUNT = 27, ORANGEFS_PARAM_REQUEST_OP_READAHEAD_COUNT_SIZE = 28, |
8bb8aefd5
|
164 165 166 167 168 |
}; struct orangefs_param_request_s { enum orangefs_param_request_type type; enum orangefs_param_request_op op; |
680908e50
|
169 170 171 172 |
union { __s64 value64; __s32 value32[2]; } u; |
8bb8aefd5
|
173 |
char s_value[ORANGEFS_MAX_DEBUG_STRING_LEN]; |
f7ab093f7
|
174 |
}; |
8bb8aefd5
|
175 176 177 178 |
enum orangefs_perf_count_request_type { ORANGEFS_PERF_COUNT_REQUEST_ACACHE = 1, ORANGEFS_PERF_COUNT_REQUEST_NCACHE = 2, ORANGEFS_PERF_COUNT_REQUEST_CAPCACHE = 3, |
f7ab093f7
|
179 |
}; |
8bb8aefd5
|
180 181 |
struct orangefs_perf_count_request_s { enum orangefs_perf_count_request_type type; |
f7ab093f7
|
182 183 |
__s32 __pad1; }; |
8bb8aefd5
|
184 |
struct orangefs_fs_key_request_s { |
f7ab093f7
|
185 186 187 |
__s32 fsid; __s32 __pad1; }; |
482664ddb
|
188 189 190 191 |
/* 2.9.6 */ struct orangefs_features_request_s { __u64 features; }; |
8bb8aefd5
|
192 |
struct orangefs_upcall_s { |
f7ab093f7
|
193 194 195 196 197 |
__s32 type; __u32 uid; __u32 gid; int pid; int tgid; |
f0ed4418d
|
198 |
/* Trailers unused but must be retained for protocol compatibility. */ |
f7ab093f7
|
199 200 201 202 |
__s64 trailer_size; char *trailer_buf; union { |
8bb8aefd5
|
203 204 205 206 207 208 209 210 211 212 213 214 215 |
struct orangefs_io_request_s io; struct orangefs_lookup_request_s lookup; struct orangefs_create_request_s create; struct orangefs_symlink_request_s sym; struct orangefs_getattr_request_s getattr; struct orangefs_setattr_request_s setattr; struct orangefs_remove_request_s remove; struct orangefs_mkdir_request_s mkdir; struct orangefs_readdir_request_s readdir; struct orangefs_readdirplus_request_s readdirplus; struct orangefs_rename_request_s rename; struct orangefs_statfs_request_s statfs; struct orangefs_truncate_request_s truncate; |
6eaff8c77
|
216 |
struct orangefs_ra_cache_flush_request_s ra_cache_flush; |
8bb8aefd5
|
217 218 219 220 221 222 223 224 225 226 227 |
struct orangefs_fs_mount_request_s fs_mount; struct orangefs_fs_umount_request_s fs_umount; struct orangefs_getxattr_request_s getxattr; struct orangefs_setxattr_request_s setxattr; struct orangefs_listxattr_request_s listxattr; struct orangefs_removexattr_request_s removexattr; struct orangefs_op_cancel_s cancel; struct orangefs_fsync_request_s fsync; struct orangefs_param_request_s param; struct orangefs_perf_count_request_s perf_count; struct orangefs_fs_key_request_s fs_key; |
482664ddb
|
228 |
struct orangefs_features_request_s features; |
f7ab093f7
|
229 230 231 232 |
} req; }; #endif /* __UPCALL_H */ |