]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/cifs/cifsglob.h
ufs_truncate_blocks(): fix the case when size is in the last direct block
[karo-tx-linux.git] / fs / cifs / cifsglob.h
index 37f5a41cc50cc523cd76c790100398d4db9e80ca..8be55be70faf6c278de7b7c623501385bf21acaf 100644 (file)
@@ -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;