Loading fs/ext4/inline.c +10 −2 Original line number Diff line number Diff line Loading @@ -503,8 +503,16 @@ int ext4_readpage_inline(struct inode *inode, struct page *page) return -EAGAIN; } trace_android_fs_dataread_start(inode, page_offset(page), PAGE_SIZE, current->pid, current->comm); if (trace_android_fs_dataread_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, page_offset(page), PAGE_SIZE, current->pid, path, current->comm); } /* * Current inline data can only exist in the 1st page, Loading fs/ext4/inode.c +36 −9 Original line number Diff line number Diff line Loading @@ -1019,8 +1019,16 @@ static int ext4_write_begin(struct file *file, struct address_space *mapping, pgoff_t index; unsigned from, to; if (trace_android_fs_datawrite_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, pos, len, current->pid, current->comm); current->pid, path, current->comm); } trace_ext4_write_begin(inode, pos, len, flags); /* * Reserve one block more for addition to orphan list in case Loading Loading @@ -2747,8 +2755,16 @@ static int ext4_da_write_begin(struct file *file, struct address_space *mapping, len, flags, pagep, fsdata); } *fsdata = (void *)0; if (trace_android_fs_datawrite_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, pos, len, current->pid, current->comm); current->pid, path, current->comm); } trace_ext4_da_write_begin(inode, pos, len, flags); if (ext4_test_inode_state(inode, EXT4_STATE_MAY_INLINE_DATA)) { Loading Loading @@ -3361,16 +3377,27 @@ static ssize_t ext4_direct_IO(struct kiocb *iocb, struct iov_iter *iter, return 0; if (trace_android_fs_dataread_start_enabled() && (iov_iter_rw(iter) == READ)) (iov_iter_rw(iter) == READ)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, offset, count, current->pid, current->pid, path, current->comm); } if (trace_android_fs_datawrite_start_enabled() && (iov_iter_rw(iter) == WRITE)) (iov_iter_rw(iter) == WRITE)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, offset, count, current->pid, current->pid, path, current->comm); } trace_ext4_direct_IO_enter(inode, offset, count, iov_iter_rw(iter)); if (ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) ret = ext4_ext_direct_IO(iocb, iter, offset); Loading fs/ext4/readpage.c +6 −0 Original line number Diff line number Diff line Loading @@ -158,11 +158,17 @@ ext4_submit_bio_read(struct bio *bio) struct page *first_page = bio->bi_io_vec[0].bv_page; if (first_page != NULL) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, first_page->mapping->host); trace_android_fs_dataread_start( first_page->mapping->host, page_offset(first_page), bio->bi_iter.bi_size, current->pid, path, current->comm); } } Loading fs/f2fs/data.c +27 −7 Original line number Diff line number Diff line Loading @@ -1406,8 +1406,16 @@ static int f2fs_write_begin(struct file *file, struct address_space *mapping, struct dnode_of_data dn; int err = 0; if (trace_android_fs_datawrite_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, pos, len, current->pid, current->comm); current->pid, path, current->comm); } trace_f2fs_write_begin(inode, pos, len, flags); f2fs_balance_fs(sbi); Loading Loading @@ -1591,15 +1599,27 @@ static ssize_t f2fs_direct_IO(struct kiocb *iocb, struct iov_iter *iter, trace_f2fs_direct_IO_enter(inode, offset, count, iov_iter_rw(iter)); if (trace_android_fs_dataread_start_enabled() && (iov_iter_rw(iter) == READ)) (iov_iter_rw(iter) == READ)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, offset, count, current->pid, count, current->pid, path, current->comm); } if (trace_android_fs_datawrite_start_enabled() && (iov_iter_rw(iter) == WRITE)) trace_android_fs_datawrite_start(inode, offset, count, current->pid, current->comm); (iov_iter_rw(iter) == WRITE)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, offset, count, current->pid, path, current->comm); } if (iov_iter_rw(iter) == WRITE) { __allocate_data_blocks(inode, offset, count); if (unlikely(f2fs_cp_error(F2FS_I_SB(inode)))) { Loading fs/f2fs/inline.c +10 −3 Original line number Diff line number Diff line Loading @@ -85,9 +85,16 @@ int f2fs_read_inline_data(struct inode *inode, struct page *page) { struct page *ipage; if (trace_android_fs_dataread_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, page_offset(page), PAGE_SIZE, current->pid, current->comm); path, current->comm); } ipage = get_node_page(F2FS_I_SB(inode), inode->i_ino); if (IS_ERR(ipage)) { Loading Loading
fs/ext4/inline.c +10 −2 Original line number Diff line number Diff line Loading @@ -503,8 +503,16 @@ int ext4_readpage_inline(struct inode *inode, struct page *page) return -EAGAIN; } trace_android_fs_dataread_start(inode, page_offset(page), PAGE_SIZE, current->pid, current->comm); if (trace_android_fs_dataread_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, page_offset(page), PAGE_SIZE, current->pid, path, current->comm); } /* * Current inline data can only exist in the 1st page, Loading
fs/ext4/inode.c +36 −9 Original line number Diff line number Diff line Loading @@ -1019,8 +1019,16 @@ static int ext4_write_begin(struct file *file, struct address_space *mapping, pgoff_t index; unsigned from, to; if (trace_android_fs_datawrite_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, pos, len, current->pid, current->comm); current->pid, path, current->comm); } trace_ext4_write_begin(inode, pos, len, flags); /* * Reserve one block more for addition to orphan list in case Loading Loading @@ -2747,8 +2755,16 @@ static int ext4_da_write_begin(struct file *file, struct address_space *mapping, len, flags, pagep, fsdata); } *fsdata = (void *)0; if (trace_android_fs_datawrite_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, pos, len, current->pid, current->comm); current->pid, path, current->comm); } trace_ext4_da_write_begin(inode, pos, len, flags); if (ext4_test_inode_state(inode, EXT4_STATE_MAY_INLINE_DATA)) { Loading Loading @@ -3361,16 +3377,27 @@ static ssize_t ext4_direct_IO(struct kiocb *iocb, struct iov_iter *iter, return 0; if (trace_android_fs_dataread_start_enabled() && (iov_iter_rw(iter) == READ)) (iov_iter_rw(iter) == READ)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, offset, count, current->pid, current->pid, path, current->comm); } if (trace_android_fs_datawrite_start_enabled() && (iov_iter_rw(iter) == WRITE)) (iov_iter_rw(iter) == WRITE)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, offset, count, current->pid, current->pid, path, current->comm); } trace_ext4_direct_IO_enter(inode, offset, count, iov_iter_rw(iter)); if (ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) ret = ext4_ext_direct_IO(iocb, iter, offset); Loading
fs/ext4/readpage.c +6 −0 Original line number Diff line number Diff line Loading @@ -158,11 +158,17 @@ ext4_submit_bio_read(struct bio *bio) struct page *first_page = bio->bi_io_vec[0].bv_page; if (first_page != NULL) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, first_page->mapping->host); trace_android_fs_dataread_start( first_page->mapping->host, page_offset(first_page), bio->bi_iter.bi_size, current->pid, path, current->comm); } } Loading
fs/f2fs/data.c +27 −7 Original line number Diff line number Diff line Loading @@ -1406,8 +1406,16 @@ static int f2fs_write_begin(struct file *file, struct address_space *mapping, struct dnode_of_data dn; int err = 0; if (trace_android_fs_datawrite_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, pos, len, current->pid, current->comm); current->pid, path, current->comm); } trace_f2fs_write_begin(inode, pos, len, flags); f2fs_balance_fs(sbi); Loading Loading @@ -1591,15 +1599,27 @@ static ssize_t f2fs_direct_IO(struct kiocb *iocb, struct iov_iter *iter, trace_f2fs_direct_IO_enter(inode, offset, count, iov_iter_rw(iter)); if (trace_android_fs_dataread_start_enabled() && (iov_iter_rw(iter) == READ)) (iov_iter_rw(iter) == READ)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, offset, count, current->pid, count, current->pid, path, current->comm); } if (trace_android_fs_datawrite_start_enabled() && (iov_iter_rw(iter) == WRITE)) trace_android_fs_datawrite_start(inode, offset, count, current->pid, current->comm); (iov_iter_rw(iter) == WRITE)) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_datawrite_start(inode, offset, count, current->pid, path, current->comm); } if (iov_iter_rw(iter) == WRITE) { __allocate_data_blocks(inode, offset, count); if (unlikely(f2fs_cp_error(F2FS_I_SB(inode)))) { Loading
fs/f2fs/inline.c +10 −3 Original line number Diff line number Diff line Loading @@ -85,9 +85,16 @@ int f2fs_read_inline_data(struct inode *inode, struct page *page) { struct page *ipage; if (trace_android_fs_dataread_start_enabled()) { char *path, pathbuf[MAX_TRACE_PATHBUF_LEN]; path = android_fstrace_get_pathname(pathbuf, MAX_TRACE_PATHBUF_LEN, inode); trace_android_fs_dataread_start(inode, page_offset(page), PAGE_SIZE, current->pid, current->comm); path, current->comm); } ipage = get_node_page(F2FS_I_SB(inode), inode->i_ino); if (IS_ERR(ipage)) { Loading