From a0c531776695cf01eb60534672092250d8f8ab0a Mon Sep 17 00:00:00 2001 From: nathan Date: Fri, 16 Feb 2007 23:14:06 +0000 Subject: [PATCH] b=11691 r=adilger Don't print regular error messages about the MGS when we're connecting to an old MDT. --- lustre/include/obd_class.h | 3 ++- lustre/llite/llite_lib.c | 1 + lustre/mgc/mgc_request.c | 7 ++++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/lustre/include/obd_class.h b/lustre/include/obd_class.h index 6dcf8f9..9802e16 100644 --- a/lustre/include/obd_class.h +++ b/lustre/include/obd_class.h @@ -98,8 +98,9 @@ void class_decref(struct obd_device *obd); #define CFG_F_START 0x01 /* Set when we start updating from a log */ #define CFG_F_MARKER 0x02 /* We are within a maker */ #define CFG_F_SKIP 0x04 /* We should ignore this cfg command */ -#define CFG_F_COMPAT146 0x08 /* Using old-style log */ +#define CFG_F_COMPAT146 0x08 /* Allow old-style logs */ #define CFG_F_EXCLUDE 0x10 /* OST exclusion list */ +#define CFG_F_SERVER146 0x20 /* Using old server */ /* Passed as data param to class_config_parse_llog */ struct config_llog_instance { diff --git a/lustre/llite/llite_lib.c b/lustre/llite/llite_lib.c index dbc8b50..5858ca9 100644 --- a/lustre/llite/llite_lib.c +++ b/lustre/llite/llite_lib.c @@ -921,6 +921,7 @@ int ll_fill_super(struct super_block *sb) memcpy(lsi->lsi_lmd->lmd_profile, oldname, strlen(oldname) + 1); profilenm = get_profile_name(sb); + cfg.cfg_flags |= CFG_F_SERVER146; } OBD_FREE(oldname, oldnamelen); } diff --git a/lustre/mgc/mgc_request.c b/lustre/mgc/mgc_request.c index 2b6fa06..4d6733e 100644 --- a/lustre/mgc/mgc_request.c +++ b/lustre/mgc/mgc_request.c @@ -308,7 +308,7 @@ static int mgc_requeue_add(struct config_llog_data *cld, int later) CDEBUG(D_INFO, "log %s: requeue (l=%d r=%d sp=%d st=%x)\n", cld->cld_logname, later, atomic_read(&cld->cld_refcount), cld->cld_stopping, rq_state); - + /* Hold lock for rq_state */ spin_lock(&config_list_lock); cld->cld_lostlock = 1; @@ -1000,6 +1000,11 @@ static int mgc_process_log(struct obd_device *mgc, if (cld->cld_stopping) RETURN(0); + if (cld->cld_cfg.cfg_flags & CFG_F_SERVER146) + /* If we started from an old MDT, don't bother trying to + get log updates from the MGS */ + RETURN(0); + OBD_FAIL_TIMEOUT(OBD_FAIL_MGC_PROCESS_LOG, 20); lsi = s2lsi(cld->cld_cfg.cfg_sb); -- 1.8.3.1