summaryrefslogtreecommitdiff
path: root/fs/btrfs/inode.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2022-05-05 23:11:14 +0300
committerDavid Sterba <dsterba@suse.com>2022-05-16 18:17:32 +0300
commita3e171a09cd4f67bb4c7ea93b552b543f19a308e (patch)
treeb8ea9184650305ae8732a601fb6f330e7e9dd621 /fs/btrfs/inode.c
parentacb8b52a158ae5610a1378f62de5ea061a12be3d (diff)
downloadlinux-a3e171a09cd4f67bb4c7ea93b552b543f19a308e.tar.xz
btrfs: move struct btrfs_dio_private to inode.c
The btrfs_dio_private structure is only used in inode.c, so move the definition there. Reviewed-by: Nikolay Borisov <nborisov@suse.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/inode.c')
-rw-r--r--fs/btrfs/inode.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index ebed9eb3e567..84b0a052da48 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -68,6 +68,30 @@ struct btrfs_dio_data {
bool nocow_done;
};
+struct btrfs_dio_private {
+ struct inode *inode;
+
+ /*
+ * Since DIO can use anonymous page, we cannot use page_offset() to
+ * grab the file offset, thus need a dedicated member for file offset.
+ */
+ u64 file_offset;
+ /* Used for bio::bi_size */
+ u32 bytes;
+
+ /*
+ * References to this structure. There is one reference per in-flight
+ * bio plus one while we're still setting up.
+ */
+ refcount_t refs;
+
+ /* dio_bio came from fs/direct-io.c */
+ struct bio *dio_bio;
+
+ /* Array of checksums */
+ u8 csums[];
+};
+
struct btrfs_rename_ctx {
/* Output field. Stores the index number of the old directory entry. */
u64 index;