xfs: print buffer offsets when dumping corrupt buffers
PATCH 1/1 xfs: print buffer offsets when dumping corrupt buffers
From: Darrick J. Wong <[email protected]>
Use DUMP_PREFIX_OFFSET when printing hex dumps of corrupt buffers because modern Linux now prints a 32-bit hash of our 64-bit pointer when using DUMP_PREFIX_ADDRESS:
00000000b4bb4297: 00 00 00 00 00 00 00 00 3b ee 00 00 00 00 00 00 ........;....... 00000005ec77e26: 00 00 00 00 02 d0 5a 00 00 00 00 00 00 00 00 00 ......Z......... 000000015938018: 21 98 e8 b4 fd de 4c 07 bc ea 3c e5 ae b4 7c 48 !.....L...<...|H
This is totally worthless for a sequential dump since we probably only care about tracking the buffer offsets and afaik there's no way to recover the actual pointer from the hashed value.
--- fs/xfs/xfs_message.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
fs/xfs/xfs_message.c +1 -1
@@ -107,5 +107,5 @@ assfail(char *expr, char *file, int line)void xfs_hex_dump (void *p,int length) { -print_hex_dump (KERN_ALERT ,"" ,DUMP_PREFIX_ADDRESS ,16 ,1 , p, length,1 ); +print_hex_dump (KERN_ALERT ,"" ,DUMP_PREFIX_OFFSET ,16 ,1 , p, length,1 ); }
Quoted 10 lines · Darrick J. Wong
From: Darrick J. Wong <[email protected]>
Use
DUMP_PREFIX_OFFSETwhen printing hex dumps of corrupt buffers because modern Linux now prints a 32-bit hash of our 64-bit pointer when usingDUMP_PREFIX_ADDRESS:
00000000b4bb4297: 00 00 00 00 00 00 00 00 3b ee 00 00 00 00 00 00 ........;.......00000005ec77e26: 00 00 00 00 02 d0 5a 00 00 00 00 00 00 00 00 00 ......Z......... 000000015938018: 21 98 e8 b4 fd de 4c 07 bc ea 3c e5 ae b4 7c 48 !.....L...<...|H
Quoted 5 lines
This is totally worthless for a sequential dump since we probably only care about tracking the buffer offsets and afaik there's no way to recover the actual pointer from the hashed value.
Signed-off-by Darrick J. Wong <[email protected]>
Makes sense - offset into buffer is what we really care about.
Signature · 2 lines
Dave Chinner [email protected]