43 lines
1.4 KiB
Diff
43 lines
1.4 KiB
Diff
|
From f8e5d2afc5b9bbf676ac20894f0f26e6ec998557 Mon Sep 17 00:00:00 2001
|
||
|
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
|
||
|
Date: Tue, 10 Sep 2019 15:40:12 +0200
|
||
|
Subject: [PATCH] Filesystem: improve "/" check for bind mounts
|
||
|
|
||
|
---
|
||
|
heartbeat/Filesystem | 15 +++------------
|
||
|
1 file changed, 3 insertions(+), 12 deletions(-)
|
||
|
|
||
|
diff --git a/heartbeat/Filesystem b/heartbeat/Filesystem
|
||
|
index 738e3c08e..e66ddc77f 100755
|
||
|
--- a/heartbeat/Filesystem
|
||
|
+++ b/heartbeat/Filesystem
|
||
|
@@ -337,17 +337,8 @@ bind_kernel_check() {
|
||
|
ocf_log warn "kernel `uname -r` cannot handle read only bind mounts"
|
||
|
}
|
||
|
|
||
|
-bind_rootfs_check() {
|
||
|
- local SOURCE
|
||
|
- local TARGET
|
||
|
- local ROOTFS
|
||
|
-
|
||
|
- SOURCE=$1
|
||
|
- TARGET=$(df --output=target $SOURCE | tail -n 1)
|
||
|
-
|
||
|
- ROOTFS=$(list_mounts | grep -w rootfs | cut -d' ' -f 2)
|
||
|
-
|
||
|
- if [ "${TARGET}" = "${ROOTFS}" ]; then
|
||
|
+bind_root_mount_check() {
|
||
|
+ if [ "$(df -P "$1" | awk 'END{print $6}')" = "/" ]; then
|
||
|
return 1
|
||
|
else
|
||
|
return 0
|
||
|
@@ -516,7 +507,7 @@ get_pids()
|
||
|
local procs
|
||
|
local mmap_procs
|
||
|
|
||
|
- if is_bind_mount && ocf_is_true "$FORCE_UNMOUNT" && ! bind_rootfs_check "$DEVICE"; then
|
||
|
+ if is_bind_mount && ocf_is_true "$FORCE_UNMOUNT" && ! bind_root_mount_check "$DEVICE"; then
|
||
|
ocf_log debug "Change force_umount from '$FORCE_UNMOUNT' to 'safe'"
|
||
|
FORCE_UNMOUNT=safe
|
||
|
fi
|