[PATCH RFC] fs: xfs: Fix xfs_trans_read_buf event tracing

Pratyush Anand
2015-02-19T13:24:58Z

My root file system is xfs. As soon as I enable event for
xfs_trans_read_buf `echo xfs:xfs_trans_read_buf >>
/sys/kernel/debug/tracing/set_event`, I see a kernel panic.

A little bit of debugging shows that bp->b_fspriv is NULL many a time
when trace_xfs_trans_read_buf(bp->b_fspriv) is called.

I do not have any idea about xfs filesystem. So, I am not sure, if it
is expected to have bp->b_fspriv = NULL at this location.

This patch fixes the issue, until we have a better fix.

Signed-off-by: Pratyush Anand <panand@redhat.com>
---
fs/xfs/xfs_trans_buf.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/xfs/xfs_trans_buf.c b/fs/xfs/xfs_trans_buf.c
index 0a4d4ab6d9a9..0b67a20643bf 100644
--- a/fs/xfs/xfs_trans_buf.c
+++ b/fs/xfs/xfs_trans_buf.c
@@ -329,7 +329,8 @@ xfs_trans_read_buf_map(

if (tp)
_xfs_trans_bjoin(tp, bp, 1);
- trace_xfs_trans_read_buf(bp->b_fspriv);
+ if (bp->b_fspriv)
+ trace_xfs_trans_read_buf(bp->b_fspriv);
*bpp = bp;
return 0;

--
2.1.0