On 2/19/15 7:24 AM, Pratyush Anand wrote:
> 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.
What kernel did you hit this on? What did the backtrace look like?
I've been unable to reproduce the problem so far.
Thanks,
-Eric
> Signed-off-by: Pratyush Anand <panand@xxxxxxxxxx>
> ---
> 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;
>
>
|