aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/uapi/linux/coda.h29
1 files changed, 27 insertions, 2 deletions
diff --git a/include/uapi/linux/coda.h b/include/uapi/linux/coda.h
index 5dba636b6e11..aa34c2dcae8d 100644
--- a/include/uapi/linux/coda.h
+++ b/include/uapi/linux/coda.h
@@ -271,7 +271,8 @@ struct coda_statfs {
271#define CODA_STATFS 34 271#define CODA_STATFS 34
272#define CODA_STORE 35 272#define CODA_STORE 35
273#define CODA_RELEASE 36 273#define CODA_RELEASE 36
274#define CODA_NCALLS 37 274#define CODA_ACCESS_INTENT 37
275#define CODA_NCALLS 38
275 276
276#define DOWNCALL(opcode) (opcode >= CODA_REPLACE && opcode <= CODA_PURGEFID) 277#define DOWNCALL(opcode) (opcode >= CODA_REPLACE && opcode <= CODA_PURGEFID)
277 278
@@ -281,8 +282,12 @@ struct coda_statfs {
281 282
282#define CIOC_KERNEL_VERSION _IOWR('c', 10, size_t) 283#define CIOC_KERNEL_VERSION _IOWR('c', 10, size_t)
283 284
285// CODA_KERNEL_VERSION 0 /* don't care about kernel version number */
286// CODA_KERNEL_VERSION 1 /* The old venus 4.6 compatible interface */
287// CODA_KERNEL_VERSION 2 /* venus_lookup gets an extra parameter */
284// CODA_KERNEL_VERSION 3 /* 128-bit file identifiers */ 288// CODA_KERNEL_VERSION 3 /* 128-bit file identifiers */
285#define CODA_KERNEL_VERSION 4 /* 64-bit timespec */ 289// CODA_KERNEL_VERSION 4 /* 64-bit timespec */
290#define CODA_KERNEL_VERSION 5 /* access intent support */
286 291
287/* 292/*
288 * Venus <-> Coda RPC arguments 293 * Venus <-> Coda RPC arguments
@@ -637,6 +642,25 @@ struct coda_statfs_out {
637 struct coda_statfs stat; 642 struct coda_statfs stat;
638}; 643};
639 644
645#define CODA_ACCESS_TYPE_READ 1
646#define CODA_ACCESS_TYPE_WRITE 2
647#define CODA_ACCESS_TYPE_MMAP 3
648#define CODA_ACCESS_TYPE_READ_FINISH 4
649#define CODA_ACCESS_TYPE_WRITE_FINISH 5
650
651/* coda_access_intent: NO_OUT */
652struct coda_access_intent_in {
653 struct coda_in_hdr ih;
654 struct CodaFid VFid;
655 int count;
656 int pos;
657 int type;
658};
659
660struct coda_access_intent_out {
661 struct coda_out_hdr out;
662};
663
640/* 664/*
641 * Occasionally, we don't cache the fid returned by CODA_LOOKUP. 665 * Occasionally, we don't cache the fid returned by CODA_LOOKUP.
642 * For instance, if the fid is inconsistent. 666 * For instance, if the fid is inconsistent.
@@ -668,6 +692,7 @@ union inputArgs {
668 struct coda_open_by_fd_in coda_open_by_fd; 692 struct coda_open_by_fd_in coda_open_by_fd;
669 struct coda_open_by_path_in coda_open_by_path; 693 struct coda_open_by_path_in coda_open_by_path;
670 struct coda_statfs_in coda_statfs; 694 struct coda_statfs_in coda_statfs;
695 struct coda_access_intent_in coda_access_intent;
671}; 696};
672 697
673union outputArgs { 698union outputArgs {