Message ID | dcaff476004805544b6ad6d54d0c4adee1f7184f.1744432270.git.ritesh.list@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [v2,1/2] Documentation: iomap: Add missing flags description | expand |
On Sat, Apr 12, 2025 at 10:06:35AM +0530, Ritesh Harjani (IBM) wrote: > This adds missing iomap flags to IOMAP_FLAGS_STRINGS & > IOMAP_F_FLAGS_STRINGS for tracing. While we are at it, let's also print > values of iomap->type & iomap->flags. > > e.g. trace for ATOMIC_BIO flag set > xfs_io-1203 [000] ..... 183.001559: iomap_iter_dstmap: dev 8:32 ino 0xc bdev 8:32 addr 0x84200000 offset 0x0 length 0x10000 type MAPPED (0x2) flags DIRTY|ATOMIC_BIO (0x102) > > e.g. trace with DONTCACHE flag set > xfs_io-1110 [007] ..... 238.780532: iomap_iter: dev 8:16 ino 0x83 pos 0x1000 length 0x1000 status 0 flags WRITE|DONTCACHE (0x401) ops xfs_buffered_write_iomap_ops caller iomap_file_buffered_write+0xab/0x0 > > Reviewed-by: Darrick J. Wong <djwong@kernel.org> > Signed-off-by: Ritesh Harjani (IBM) <ritesh.list@gmail.com> Hi Ritesh, the patch looks good. Feel free to add: Reviewed-by: Ojaswin Mujoo <ojaswin@linux.ibm.com> Regards, ojaswin > --- > fs/iomap/trace.h | 27 +++++++++++++++++++++------ > 1 file changed, 21 insertions(+), 6 deletions(-) > > diff --git a/fs/iomap/trace.h b/fs/iomap/trace.h > index 9eab2c8ac3c5..455cc6f90be0 100644 > --- a/fs/iomap/trace.h > +++ b/fs/iomap/trace.h > @@ -99,7 +99,11 @@ DEFINE_RANGE_EVENT(iomap_dio_rw_queued); > { IOMAP_FAULT, "FAULT" }, \ > { IOMAP_DIRECT, "DIRECT" }, \ > { IOMAP_NOWAIT, "NOWAIT" }, \ > - { IOMAP_ATOMIC, "ATOMIC" } > + { IOMAP_OVERWRITE_ONLY, "OVERWRITE_ONLY" }, \ > + { IOMAP_UNSHARE, "UNSHARE" }, \ > + { IOMAP_DAX, "DAX" }, \ > + { IOMAP_ATOMIC, "ATOMIC" }, \ > + { IOMAP_DONTCACHE, "DONTCACHE" } > > #define IOMAP_F_FLAGS_STRINGS \ > { IOMAP_F_NEW, "NEW" }, \ > @@ -107,7 +111,14 @@ DEFINE_RANGE_EVENT(iomap_dio_rw_queued); > { IOMAP_F_SHARED, "SHARED" }, \ > { IOMAP_F_MERGED, "MERGED" }, \ > { IOMAP_F_BUFFER_HEAD, "BH" }, \ > - { IOMAP_F_SIZE_CHANGED, "SIZE_CHANGED" } > + { IOMAP_F_XATTR, "XATTR" }, \ > + { IOMAP_F_BOUNDARY, "BOUNDARY" }, \ > + { IOMAP_F_ANON_WRITE, "ANON_WRITE" }, \ > + { IOMAP_F_ATOMIC_BIO, "ATOMIC_BIO" }, \ > + { IOMAP_F_PRIVATE, "PRIVATE" }, \ > + { IOMAP_F_SIZE_CHANGED, "SIZE_CHANGED" }, \ > + { IOMAP_F_STALE, "STALE" } > + > > #define IOMAP_DIO_STRINGS \ > {IOMAP_DIO_FORCE_WAIT, "DIO_FORCE_WAIT" }, \ > @@ -138,7 +149,7 @@ DECLARE_EVENT_CLASS(iomap_class, > __entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0; > ), > TP_printk("dev %d:%d ino 0x%llx bdev %d:%d addr 0x%llx offset 0x%llx " > - "length 0x%llx type %s flags %s", > + "length 0x%llx type %s (0x%x) flags %s (0x%x)", > MAJOR(__entry->dev), MINOR(__entry->dev), > __entry->ino, > MAJOR(__entry->bdev), MINOR(__entry->bdev), > @@ -146,7 +157,9 @@ DECLARE_EVENT_CLASS(iomap_class, > __entry->offset, > __entry->length, > __print_symbolic(__entry->type, IOMAP_TYPE_STRINGS), > - __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS)) > + __entry->type, > + __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS), > + __entry->flags) > ) > > #define DEFINE_IOMAP_EVENT(name) \ > @@ -185,7 +198,7 @@ TRACE_EVENT(iomap_writepage_map, > __entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0; > ), > TP_printk("dev %d:%d ino 0x%llx bdev %d:%d pos 0x%llx dirty len 0x%llx " > - "addr 0x%llx offset 0x%llx length 0x%llx type %s flags %s", > + "addr 0x%llx offset 0x%llx length 0x%llx type %s (0x%x) flags %s (0x%x)", > MAJOR(__entry->dev), MINOR(__entry->dev), > __entry->ino, > MAJOR(__entry->bdev), MINOR(__entry->bdev), > @@ -195,7 +208,9 @@ TRACE_EVENT(iomap_writepage_map, > __entry->offset, > __entry->length, > __print_symbolic(__entry->type, IOMAP_TYPE_STRINGS), > - __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS)) > + __entry->type, > + __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS), > + __entry->flags) > ); > > TRACE_EVENT(iomap_iter, > -- > 2.48.1 >
diff --git a/fs/iomap/trace.h b/fs/iomap/trace.h index 9eab2c8ac3c5..455cc6f90be0 100644 --- a/fs/iomap/trace.h +++ b/fs/iomap/trace.h @@ -99,7 +99,11 @@ DEFINE_RANGE_EVENT(iomap_dio_rw_queued); { IOMAP_FAULT, "FAULT" }, \ { IOMAP_DIRECT, "DIRECT" }, \ { IOMAP_NOWAIT, "NOWAIT" }, \ - { IOMAP_ATOMIC, "ATOMIC" } + { IOMAP_OVERWRITE_ONLY, "OVERWRITE_ONLY" }, \ + { IOMAP_UNSHARE, "UNSHARE" }, \ + { IOMAP_DAX, "DAX" }, \ + { IOMAP_ATOMIC, "ATOMIC" }, \ + { IOMAP_DONTCACHE, "DONTCACHE" } #define IOMAP_F_FLAGS_STRINGS \ { IOMAP_F_NEW, "NEW" }, \ @@ -107,7 +111,14 @@ DEFINE_RANGE_EVENT(iomap_dio_rw_queued); { IOMAP_F_SHARED, "SHARED" }, \ { IOMAP_F_MERGED, "MERGED" }, \ { IOMAP_F_BUFFER_HEAD, "BH" }, \ - { IOMAP_F_SIZE_CHANGED, "SIZE_CHANGED" } + { IOMAP_F_XATTR, "XATTR" }, \ + { IOMAP_F_BOUNDARY, "BOUNDARY" }, \ + { IOMAP_F_ANON_WRITE, "ANON_WRITE" }, \ + { IOMAP_F_ATOMIC_BIO, "ATOMIC_BIO" }, \ + { IOMAP_F_PRIVATE, "PRIVATE" }, \ + { IOMAP_F_SIZE_CHANGED, "SIZE_CHANGED" }, \ + { IOMAP_F_STALE, "STALE" } + #define IOMAP_DIO_STRINGS \ {IOMAP_DIO_FORCE_WAIT, "DIO_FORCE_WAIT" }, \ @@ -138,7 +149,7 @@ DECLARE_EVENT_CLASS(iomap_class, __entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0; ), TP_printk("dev %d:%d ino 0x%llx bdev %d:%d addr 0x%llx offset 0x%llx " - "length 0x%llx type %s flags %s", + "length 0x%llx type %s (0x%x) flags %s (0x%x)", MAJOR(__entry->dev), MINOR(__entry->dev), __entry->ino, MAJOR(__entry->bdev), MINOR(__entry->bdev), @@ -146,7 +157,9 @@ DECLARE_EVENT_CLASS(iomap_class, __entry->offset, __entry->length, __print_symbolic(__entry->type, IOMAP_TYPE_STRINGS), - __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS)) + __entry->type, + __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS), + __entry->flags) ) #define DEFINE_IOMAP_EVENT(name) \ @@ -185,7 +198,7 @@ TRACE_EVENT(iomap_writepage_map, __entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0; ), TP_printk("dev %d:%d ino 0x%llx bdev %d:%d pos 0x%llx dirty len 0x%llx " - "addr 0x%llx offset 0x%llx length 0x%llx type %s flags %s", + "addr 0x%llx offset 0x%llx length 0x%llx type %s (0x%x) flags %s (0x%x)", MAJOR(__entry->dev), MINOR(__entry->dev), __entry->ino, MAJOR(__entry->bdev), MINOR(__entry->bdev), @@ -195,7 +208,9 @@ TRACE_EVENT(iomap_writepage_map, __entry->offset, __entry->length, __print_symbolic(__entry->type, IOMAP_TYPE_STRINGS), - __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS)) + __entry->type, + __print_flags(__entry->flags, "|", IOMAP_F_FLAGS_STRINGS), + __entry->flags) ); TRACE_EVENT(iomap_iter,