aboutsummaryrefslogtreecommitdiffstats
path: root/fs/orangefs/upcall.h
diff options
context:
space:
mode:
authorMartin Brandenburg <martin@omnibond.com>2016-08-12 12:02:31 -0400
committerMartin Brandenburg <martin@omnibond.com>2016-08-12 15:12:54 -0400
commit482664ddba81b3a5404fd083bb9697dfffc0b6a4 (patch)
treef4dd0268a8cf58fd898f73dd7b26a0a9ef5d2eff /fs/orangefs/upcall.h
parentorangefs: record userspace version for feature compatbility (diff)
downloadlinux-dev-482664ddba81b3a5404fd083bb9697dfffc0b6a4.tar.xz
linux-dev-482664ddba81b3a5404fd083bb9697dfffc0b6a4.zip
orangefs: add features op
This is a new userspace operation, which will be done if the client-core version is greater than or equal to 2.9.6. This will provide a way to implement optional features and to determine which features are supported by the client-core. If the client-core version is older than 2.9.6, no optional features are supported and the op will not be done. The intent is to allow protocol extensions without relying on the client-core's current behavior of ignoring what it doesn't understand. Signed-off-by: Martin Brandenburg <martin@omnibond.com>
Diffstat (limited to '')
-rw-r--r--fs/orangefs/upcall.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/orangefs/upcall.h b/fs/orangefs/upcall.h
index 7c29fdf08ec5..af0b0e36d559 100644
--- a/fs/orangefs/upcall.h
+++ b/fs/orangefs/upcall.h
@@ -210,6 +210,11 @@ struct orangefs_fs_key_request_s {
__s32 __pad1;
};
+/* 2.9.6 */
+struct orangefs_features_request_s {
+ __u64 features;
+};
+
struct orangefs_upcall_s {
__s32 type;
__u32 uid;
@@ -246,6 +251,7 @@ struct orangefs_upcall_s {
struct orangefs_param_request_s param;
struct orangefs_perf_count_request_s perf_count;
struct orangefs_fs_key_request_s fs_key;
+ struct orangefs_features_request_s features;
} req;
};