From: Darrick J. Wong <darrick.wong@xxxxxxxxxx> command -v is a bashism, so we need to get rid of it. The shell returns an error code of 127 if it couldn't invoke xfs_repair, so teach repair2fsck_code to deal with this. Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --- fsck/xfs_fsck.sh | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/fsck/xfs_fsck.sh b/fsck/xfs_fsck.sh index 1916c07e..6af0f224 100755 --- a/fsck/xfs_fsck.sh +++ b/fsck/xfs_fsck.sh @@ -20,6 +20,10 @@ repair2fsck_code() { ;; 4) return 1 # The fs has been fixed ;; + 127) + echo "$NAME error: xfs_repair was not found!" 1>&2 + return 4 + ;; *) echo "$NAME error: An unknown return code from xfs_repair '$1'" 1>&2 return 4 # something went wrong with xfs_repair esac @@ -59,13 +63,7 @@ if [ -n "$PS1" -o -t 0 ]; then fi if $FORCE; then - XFS_REPAIR=`command -v xfs_repair` - if [ ! -x "$XFS_REPAIR" ] ; then - echo "$NAME error: xfs_repair was not found!" 1>&2 - exit 4 - fi - - $XFS_REPAIR -e $DEV + xfs_repair -e $DEV repair2fsck_code $? exit $? fi -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html