Author: pfg
Date: Wed Jul 24 20:21:29 2013
New Revision: 253619
URL: http://svnweb.freebsd.org/changeset/base/253619

Log:
  fuse: revert kernel_header update.
  
  It seems to be causing problems due to the lack of the new features.
  
  Found by:     bapt
  Pointed hat:  pfg

Modified:
  head/sys/fs/fuse/fuse_kernel.h

Modified: head/sys/fs/fuse/fuse_kernel.h
==============================================================================
--- head/sys/fs/fuse/fuse_kernel.h      Wed Jul 24 18:32:15 2013        
(r253618)
+++ head/sys/fs/fuse/fuse_kernel.h      Wed Jul 24 20:21:29 2013        
(r253619)
@@ -34,32 +34,14 @@
  * $FreeBSD$
  */
 
-/*
- * This file defines the kernel interface of FUSE
- *
- * Protocol changelog:
- *
- * 7.9:
- *  - new fuse_getattr_in input argument of GETATTR
- *  - add lk_flags in fuse_lk_in
- *  - add lock_owner field to fuse_setattr_in, fuse_read_in and fuse_write_in
- *  - add blksize field to fuse_attr
- *  - add file flags field to fuse_read_in and fuse_write_in
- *
- * 7.10
- *  - add nonseekable open flag
- */
-
-#ifndef _FS_FUSE_FUSE_KERNEL_H_
-#define _FS_FUSE_FUSE_KERNEL_H_
-
 #ifndef linux
 #include <sys/types.h>
 #define __u64 uint64_t
 #define __u32 uint32_t
 #define __s32 int32_t
 #else
-#include <linux/types.h>
+#include <asm/types.h>
+#include <linux/major.h>
 #endif
 
 /** Version number of this interface */
@@ -71,6 +53,12 @@
 /** The node ID of the root inode */
 #define FUSE_ROOT_ID 1
 
+/** The major number of the fuse character device */
+#define FUSE_MAJOR MISC_MAJOR
+
+/** The minor number of the fuse character device */
+#define FUSE_MINOR 229
+
 /* Make sure all structures are padded to 64bit boundary, so 32bit
    userspace works under 64bit kernels */
 
@@ -89,8 +77,6 @@ struct fuse_attr {
        __u32   uid;
        __u32   gid;
        __u32   rdev;
-       __u32   blksize;
-       __u32   padding;
 };
 
 struct fuse_kstatfs {
@@ -123,62 +109,27 @@ struct fuse_file_lock {
 #define FATTR_ATIME    (1 << 4)
 #define FATTR_MTIME    (1 << 5)
 #define FATTR_FH       (1 << 6)
-#define FATTR_ATIME_NOW        (1 << 7)
-#define FATTR_MTIME_NOW        (1 << 8)
-#define FATTR_LOCKOWNER        (1 << 9)
 
 /**
  * Flags returned by the OPEN request
  *
  * FOPEN_DIRECT_IO: bypass page cache for this open file
  * FOPEN_KEEP_CACHE: don't invalidate the data cache on open
- * FOPEN_NONSEEKABLE: the file is not seekable
  */
 #define FOPEN_DIRECT_IO                (1 << 0)
 #define FOPEN_KEEP_CACHE       (1 << 1)
-#define FOPEN_NONSEEKABLE      (1 << 2)
 
 /**
  * INIT request/reply flags
- *
- * FUSE_EXPORT_SUPPORT: filesystem handles lookups of "." and ".."
  */
 #define FUSE_ASYNC_READ                (1 << 0)
 #define FUSE_POSIX_LOCKS       (1 << 1)
-#define FUSE_FILE_OPS          (1 << 2)
-#define FUSE_ATOMIC_O_TRUNC    (1 << 3)
-#define FUSE_EXPORT_SUPPORT    (1 << 4)
-#define FUSE_BIG_WRITES                (1 << 5)
 
 /**
  * Release flags
  */
 #define FUSE_RELEASE_FLUSH     (1 << 0)
 
-/**
- * Getattr flags
- */
-#define FUSE_GETATTR_FH                (1 << 0)
-
-/**
- * Lock flags
- */
-#define FUSE_LK_FLOCK          (1 << 0)
-
-/**
- * WRITE flags
- *
- * FUSE_WRITE_CACHE: delayed write from page cache, file handle is guessed
- * FUSE_WRITE_LOCKOWNER: lock_owner field is valid
- */
-#define FUSE_WRITE_CACHE       (1 << 0)
-#define FUSE_WRITE_LOCKOWNER   (1 << 1)
-
-/**
- * Read flags
- */
-#define FUSE_READ_LOCKOWNER    (1 << 1)
-
 enum fuse_opcode {
        FUSE_LOOKUP        = 1,
        FUSE_FORGET        = 2,  /* no reply */
@@ -221,8 +172,6 @@ enum fuse_opcode {
 /* The read buffer is required to be at least 8k, but may be much larger */
 #define FUSE_MIN_READ_BUFFER 8192
 
-#define FUSE_COMPAT_ENTRY_OUT_SIZE 120
-
 struct fuse_entry_out {
        __u64   nodeid;         /* Inode ID */
        __u64   generation;     /* Inode generation: nodeid:gen must
@@ -238,14 +187,6 @@ struct fuse_forget_in {
        __u64   nlookup;
 };
 
-struct fuse_getattr_in {
-       __u32   getattr_flags;
-       __u32   dummy;
-       __u64   fh;
-};
-
-#define FUSE_COMPAT_ATTR_OUT_SIZE 96
-
 struct fuse_attr_out {
        __u64   attr_valid;     /* Cache timeout for the attributes */
        __u32   attr_valid_nsec;
@@ -253,11 +194,6 @@ struct fuse_attr_out {
        struct fuse_attr attr;
 };
 
-struct fuse_mknod_in {
-       __u32   mode;
-       __u32   rdev;
-};
-
 struct fuse_mkdir_in {
        __u32   mode;
        __u32   padding;
@@ -276,7 +212,7 @@ struct fuse_setattr_in {
        __u32   padding;
        __u64   fh;
        __u64   size;
-       __u64   lock_owner;
+       __u64   unused1;
        __u64   atime;
        __u64   mtime;
        __u64   unused2;
@@ -319,22 +255,14 @@ struct fuse_read_in {
        __u64   fh;
        __u64   offset;
        __u32   size;
-       __u32   read_flags;
-       __u64   lock_owner;
-       __u32   flags;
        __u32   padding;
 };
 
-#define FUSE_COMPAT_WRITE_IN_SIZE 24
-
 struct fuse_write_in {
        __u64   fh;
        __u64   offset;
        __u32   size;
        __u32   write_flags;
-       __u64   lock_owner;
-       __u32   flags;
-       __u32   padding;
 };
 
 struct fuse_write_out {
@@ -373,8 +301,6 @@ struct fuse_lk_in {
        __u64   fh;
        __u64   owner;
        struct fuse_file_lock lk;
-       __u32   lk_flags;
-       __u32   padding;
 };
 
 struct fuse_lk_out {
@@ -438,12 +364,10 @@ struct fuse_dirent {
        __u64   off;
        __u32   namelen;
        __u32   type;
-       char name[];
+       char name[0];
 };
 
 #define FUSE_NAME_OFFSET offsetof(struct fuse_dirent, name)
 #define FUSE_DIRENT_ALIGN(x) (((x) + sizeof(__u64) - 1) & ~(sizeof(__u64) - 1))
 #define FUSE_DIRENT_SIZE(d) \
        FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen)
-
-#endif /* !_FS_FUSE_FUSE_KERNEL_H_ */
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to