From: Nathaniel Clark Date: Fri, 6 Oct 2017 16:49:23 +0000 (-0400) Subject: LU-10098 scripts: Fix mounted check in Lustre RA X-Git-Tag: 2.10.3-RC1~43 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F52%2F29352%2F5;p=fs%2Flustre-release.git LU-10098 scripts: Fix mounted check in Lustre RA The "Lustre" resource agent for pacemaker can mis-identify a resource as being mounted if it's mountpoint is a substring match for anything else in /proc/mounts. Change the lustre_is_mounted() function to check to make sure it's a lustre fs mounted at mountpoint and the "source" (i.e. device) is the target we expect. Lustre-change: https://review.whamcloud.com/29351 Lustre-commit: df96fab178534adb34067b20490a2d0629aabe2f Signed-off-by: Nathaniel Clark Change-Id: Ib877b0dc3d3ce0d93fd4663aa2418ac21d670428 Reviewed-by: Malcolm Cowe Reviewed-by: Olaf Faaland-LLNL Signed-off-by: Minh Diep Reviewed-on: https://review.whamcloud.com/29352 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: John L. Hammond --- diff --git a/contrib/scripts/pacemaker/Lustre b/contrib/scripts/pacemaker/Lustre index e3671b0..645bf96 100755 --- a/contrib/scripts/pacemaker/Lustre +++ b/contrib/scripts/pacemaker/Lustre @@ -95,8 +95,10 @@ END # lustre_is_mounted () { - # Verify if this is consistent - grep -q $(realpath "$OCF_RESKEY_mountpoint") /proc/mounts + # Verify if this is consistent, check pointpoint and filesystem + # against source (i.e. device) + local dev=$(findmnt -t lustre -ln -o SOURCE -T $(realpath "$OCF_RESKEY_mountpoint")) + [ "$dev" == "$OCF_RESKEY_target" ] } lustre_monitor () {