brintos

brintos / linux-shallow public Read only

0
0
Text · 1.9 KiB · 912254e Raw
51 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2 3#ifndef BTRFS_FILE_H4#define BTRFS_FILE_H5 6#include <linux/types.h>7 8struct file;9struct extent_state;10struct kiocb;11struct iov_iter;12struct page;13struct btrfs_ioctl_encoded_io_args;14struct btrfs_drop_extents_args;15struct btrfs_inode;16struct btrfs_root;17struct btrfs_path;18struct btrfs_replace_extent_info;19struct btrfs_trans_handle;20 21extern const struct file_operations btrfs_file_operations;22 23int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync);24int btrfs_drop_extents(struct btrfs_trans_handle *trans,25		       struct btrfs_root *root, struct btrfs_inode *inode,26		       struct btrfs_drop_extents_args *args);27int btrfs_replace_file_extents(struct btrfs_inode *inode,28			   struct btrfs_path *path, const u64 start,29			   const u64 end,30			   struct btrfs_replace_extent_info *extent_info,31			   struct btrfs_trans_handle **trans_out);32int btrfs_mark_extent_written(struct btrfs_trans_handle *trans,33			      struct btrfs_inode *inode, u64 start, u64 end);34ssize_t btrfs_do_write_iter(struct kiocb *iocb, struct iov_iter *from,35			    const struct btrfs_ioctl_encoded_io_args *encoded);36int btrfs_release_file(struct inode *inode, struct file *file);37int btrfs_dirty_pages(struct btrfs_inode *inode, struct page **pages,38		      size_t num_pages, loff_t pos, size_t write_bytes,39		      struct extent_state **cached, bool noreserve);40int btrfs_fdatawrite_range(struct btrfs_inode *inode, loff_t start, loff_t end);41int btrfs_check_nocow_lock(struct btrfs_inode *inode, loff_t pos,42			   size_t *write_bytes, bool nowait);43void btrfs_check_nocow_unlock(struct btrfs_inode *inode);44bool btrfs_find_delalloc_in_range(struct btrfs_inode *inode, u64 start, u64 end,45				  struct extent_state **cached_state,46				  u64 *delalloc_start_ret, u64 *delalloc_end_ret);47int btrfs_write_check(struct kiocb *iocb, struct iov_iter *from, size_t count);48ssize_t btrfs_buffered_write(struct kiocb *iocb, struct iov_iter *i);49 50#endif51