]> git.ipfire.org Git - thirdparty/kernel/stable.git/blobdiff - fs/cifs/cifsglob.h
[CIFS] Minor cleanup of xattr query function
[thirdparty/kernel/stable.git] / fs / cifs / cifsglob.h
index 37f5a41cc50cc523cd76c790100398d4db9e80ca..bcc7d9acad64b3a59b9c966956accb2c51d9ac13 100644 (file)
@@ -418,7 +418,7 @@ struct smb_version_operations {
        int (*validate_negotiate)(const unsigned int, struct cifs_tcon *);
        ssize_t (*query_all_EAs)(const unsigned int, struct cifs_tcon *,
                        const unsigned char *, const unsigned char *, char *,
-                       size_t, const struct nls_table *, int);
+                       size_t, struct cifs_sb_info *);
        int (*set_EA)(const unsigned int, struct cifs_tcon *, const char *,
                        const char *, const void *, const __u16,
                        const struct nls_table *, int);
@@ -1115,6 +1115,23 @@ struct cifs_io_parms {
        struct cifs_tcon *tcon;
 };
 
+struct cifs_aio_ctx {
+       struct kref             refcount;
+       struct list_head        list;
+       struct mutex            aio_mutex;
+       struct completion       done;
+       struct iov_iter         iter;
+       struct kiocb            *iocb;
+       struct cifsFileInfo     *cfile;
+       struct bio_vec          *bv;
+       loff_t                  pos;
+       unsigned int            npages;
+       ssize_t                 rc;
+       unsigned int            len;
+       unsigned int            total_len;
+       bool                    should_dirty;
+};
+
 struct cifs_readdata;
 
 /* asynchronous read support */
@@ -1124,6 +1141,7 @@ struct cifs_readdata {
        struct completion               done;
        struct cifsFileInfo             *cfile;
        struct address_space            *mapping;
+       struct cifs_aio_ctx             *ctx;
        __u64                           offset;
        unsigned int                    bytes;
        unsigned int                    got_bytes;
@@ -1154,6 +1172,7 @@ struct cifs_writedata {
        enum writeback_sync_modes       sync_mode;
        struct work_struct              work;
        struct cifsFileInfo             *cfile;
+       struct cifs_aio_ctx             *ctx;
        __u64                           offset;
        pid_t                           pid;
        unsigned int                    bytes;
@@ -1683,6 +1702,7 @@ void cifs_oplock_break(struct work_struct *work);
 
 extern const struct slow_work_ops cifs_oplock_break_ops;
 extern struct workqueue_struct *cifsiod_wq;
+extern struct workqueue_struct *cifsoplockd_wq;
 extern __u32 cifs_lock_secret;
 
 extern mempool_t *cifs_mid_poolp;