1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM fs 4 5 #define TRACE_INCLUDE_PATH trace/hooks 6 7 #if !defined(_TRACE_HOOK_FS_H) || defined(TRACE_HEADER_MULTI_READ) 8 #define _TRACE_HOOK_FS_H 9 10 #include <trace/hooks/vendor_hooks.h> 11 struct va_format; 12 13 DECLARE_RESTRICTED_HOOK(android_rvh_f2fs_down_read, 14 TP_PROTO(wait_queue_head_t *read_waiters, struct rw_semaphore *rwsem, bool *skip), 15 TP_ARGS(read_waiters, rwsem, skip), 1); 16 17 DECLARE_HOOK(android_vh_f2fs_improve_priority, 18 TP_PROTO(struct task_struct *p, int *saved_prio, bool *skip), 19 TP_ARGS(p, saved_prio, skip)); 20 21 DECLARE_HOOK(android_vh_f2fs_restore_priority, 22 TP_PROTO(struct task_struct *p, int saved_prio), 23 TP_ARGS(p, saved_prio)); 24 25 DECLARE_HOOK(android_vh_f2fs_printk, 26 TP_PROTO(unsigned long s_flag, struct va_format *vaf, int level, bool limit_rate), 27 TP_ARGS(s_flag, vaf, level, limit_rate)); 28 29 DECLARE_HOOK(android_vh_f2fs_create, 30 TP_PROTO(struct inode *inode, struct dentry *dentry), 31 TP_ARGS(inode, dentry)); 32 33 DECLARE_HOOK(android_vh_f2fs_set_bio_flag, 34 TP_PROTO(struct folio *folio, struct bio *bio), 35 TP_ARGS(folio, bio)); 36 37 DECLARE_HOOK(android_vh_wb_dirty_limits, 38 TP_PROTO(unsigned long *thresh, struct bdi_writeback *wb), 39 TP_ARGS(thresh, wb)); 40 41 DECLARE_HOOK(android_vh_evict, 42 TP_PROTO(struct inode *inode), 43 TP_ARGS(inode)); 44 45 DECLARE_HOOK(android_vh_inode_io_list_del, 46 TP_PROTO(struct inode *inode, struct bdi_writeback *wb), 47 TP_ARGS(inode, wb)); 48 49 DECLARE_HOOK(android_vh_redirty_tail_locked, 50 TP_PROTO(struct list_head **target_list, struct inode *inode, 51 struct bdi_writeback *wb), 52 TP_ARGS(target_list, inode, wb)); 53 54 DECLARE_HOOK(android_vh_queue_io, 55 TP_PROTO(struct bdi_writeback *wb, unsigned int for_kupdate, 56 unsigned long dirtied_before, int *moved), 57 TP_ARGS(wb, for_kupdate, dirtied_before, moved)); 58 59 DECLARE_HOOK(android_vh_mark_inode_dirty, 60 TP_PROTO(struct inode *inode, struct bdi_writeback *wb, struct list_head **dirty_list), 61 TP_ARGS(inode, wb, dirty_list)); 62 63 DECLARE_HOOK(android_vh_vfs_fsync_range, 64 TP_PROTO(struct inode *inode, unsigned long *cut_off), 65 TP_ARGS(inode, cut_off)); 66 67 DECLARE_RESTRICTED_HOOK(android_rvh_do_fcntl, 68 TP_PROTO(struct file *filp, unsigned int cmd, unsigned long arg, long *err), 69 TP_ARGS(filp, cmd, arg, err), 1); 70 71 DECLARE_HOOK(android_vh_f2fs_file_open, 72 TP_PROTO(struct inode *inode, struct file *filp), 73 TP_ARGS(inode, filp)); 74 75 #endif /* _TRACE_HOOK_FS_H */ 76 77 /* This part must be outside protection */ 78 #include <trace/define_trace.h> 79