Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iomap: standardize tracepoint formatting and storage

Print all the offset, pos, and length quantities in hexadecimal. While
we're at it, update the types of the tracepoint structure fields to
match the types of the values being recorded in them.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>

+18 -10
+18 -10
fs/iomap/trace.h
··· 4 4 * 5 5 * NOTE: none of these tracepoints shall be considered a stable kernel ABI 6 6 * as they can change at any time. 7 + * 8 + * Current conventions for printing numbers measuring specific units: 9 + * 10 + * offset: byte offset into a subcomponent of a file operation 11 + * pos: file offset, in bytes 12 + * length: length of a file operation, in bytes 13 + * ino: inode number 14 + * 15 + * Numbers describing space allocations should be formatted in hexadecimal. 7 16 */ 8 17 #undef TRACE_SYSTEM 9 18 #define TRACE_SYSTEM iomap ··· 51 42 DEFINE_READPAGE_EVENT(iomap_readahead); 52 43 53 44 DECLARE_EVENT_CLASS(iomap_range_class, 54 - TP_PROTO(struct inode *inode, unsigned long off, unsigned int len), 45 + TP_PROTO(struct inode *inode, loff_t off, u64 len), 55 46 TP_ARGS(inode, off, len), 56 47 TP_STRUCT__entry( 57 48 __field(dev_t, dev) 58 49 __field(u64, ino) 59 50 __field(loff_t, size) 60 - __field(unsigned long, offset) 61 - __field(unsigned int, length) 51 + __field(loff_t, offset) 52 + __field(u64, length) 62 53 ), 63 54 TP_fast_assign( 64 55 __entry->dev = inode->i_sb->s_dev; ··· 67 58 __entry->offset = off; 68 59 __entry->length = len; 69 60 ), 70 - TP_printk("dev %d:%d ino 0x%llx size 0x%llx offset %lx " 71 - "length %x", 61 + TP_printk("dev %d:%d ino 0x%llx size 0x%llx offset 0x%llx length 0x%llx", 72 62 MAJOR(__entry->dev), MINOR(__entry->dev), 73 63 __entry->ino, 74 64 __entry->size, ··· 77 69 78 70 #define DEFINE_RANGE_EVENT(name) \ 79 71 DEFINE_EVENT(iomap_range_class, name, \ 80 - TP_PROTO(struct inode *inode, unsigned long off, unsigned int len),\ 72 + TP_PROTO(struct inode *inode, loff_t off, u64 len),\ 81 73 TP_ARGS(inode, off, len)) 82 74 DEFINE_RANGE_EVENT(iomap_writepage); 83 75 DEFINE_RANGE_EVENT(iomap_releasepage); ··· 130 122 __entry->flags = iomap->flags; 131 123 __entry->bdev = iomap->bdev ? iomap->bdev->bd_dev : 0; 132 124 ), 133 - TP_printk("dev %d:%d ino 0x%llx bdev %d:%d addr %lld offset %lld " 134 - "length %llu type %s flags %s", 125 + TP_printk("dev %d:%d ino 0x%llx bdev %d:%d addr 0x%llx offset 0x%llx " 126 + "length 0x%llx type %s flags %s", 135 127 MAJOR(__entry->dev), MINOR(__entry->dev), 136 128 __entry->ino, 137 129 MAJOR(__entry->bdev), MINOR(__entry->bdev), ··· 157 149 __field(dev_t, dev) 158 150 __field(u64, ino) 159 151 __field(loff_t, pos) 160 - __field(loff_t, length) 152 + __field(u64, length) 161 153 __field(unsigned int, flags) 162 154 __field(const void *, ops) 163 155 __field(unsigned long, caller) ··· 171 163 __entry->ops = ops; 172 164 __entry->caller = caller; 173 165 ), 174 - TP_printk("dev %d:%d ino 0x%llx pos %lld length %lld flags %s (0x%x) ops %ps caller %pS", 166 + TP_printk("dev %d:%d ino 0x%llx pos 0x%llx length 0x%llx flags %s (0x%x) ops %ps caller %pS", 175 167 MAJOR(__entry->dev), MINOR(__entry->dev), 176 168 __entry->ino, 177 169 __entry->pos,