From ae076da0265e88714327a1ee56774c4b00273b3d Mon Sep 17 00:00:00 2001
From: nathan <nathan>
Date: Fri, 16 Nov 2007 23:12:25 +0000
Subject: [PATCH] b=13605 i=adilger don't force disconnect MGC unless told to
 (avoids eviction messages on MGS).

---
 lustre/obdclass/obd_mount.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/lustre/obdclass/obd_mount.c b/lustre/obdclass/obd_mount.c
index ced0769cba..5c24bf1665 100644
--- a/lustre/obdclass/obd_mount.c
+++ b/lustre/obdclass/obd_mount.c
@@ -770,11 +770,9 @@ static int lustre_stop_mgc(struct super_block *sb)
                 GOTO(out, rc = -EBUSY);
         }
 
-        /* MGC must always stop */
-        obd->obd_force = 1;
-        /* client_disconnect_export uses the no_recov flag to decide whether it
-           should disconnect or just invalidate.  (The MGC has no
-           recoverable data in any case.) */
+        /* MGC should disconnect nicely so MGS won't print eviction messages */
+        obd->obd_force = (lsi->lsi_flags & LSI_UMOUNT_FORCE) != 0;
+        /* The MGC has no recoverable data in any case. */
         obd->obd_no_recov = 1;
 
         if (obd->u.cli.cl_mgc_mgsexp)
-- 
GitLab