mirror of https://gitee.com/openkylin/linux.git
xfs: fix deadlock retry tracepoint arguments
sc->ip is the inode that's being scrubbed, which means that it's not set for scrub types that don't involve inodes. If one of those scrubbers (e.g. inode btrees) returns EDEADLOCK, we'll trip over the null pointer. Fix that by reporting either the file being examined or the file that was used to call scrub. Signed-off-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Brian Foster <bfoster@redhat.com>
This commit is contained in:
parent
676a659b60
commit
16c9de54dc
|
@ -74,7 +74,9 @@ __xchk_process_error(
|
|||
return true;
|
||||
case -EDEADLOCK:
|
||||
/* Used to restart an op with deadlock avoidance. */
|
||||
trace_xchk_deadlock_retry(sc->ip, sc->sm, *error);
|
||||
trace_xchk_deadlock_retry(
|
||||
sc->ip ? sc->ip : XFS_I(file_inode(sc->file)),
|
||||
sc->sm, *error);
|
||||
break;
|
||||
case -EFSBADCRC:
|
||||
case -EFSCORRUPTED:
|
||||
|
|
Loading…
Reference in New Issue