]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: OSDMonitor preprocess_pool_op add check only concern our self cluster command 10309/head
authorsongbaisen <song.baisen@zte.com.cn>
Thu, 14 Jul 2016 08:10:34 +0000 (16:10 +0800)
committersongbaisen <song.baisen@zte.com.cn>
Fri, 25 Nov 2016 03:07:47 +0000 (11:07 +0800)
we only concern the commands send to ourself cluster

Signed-off-by:song baisen <song.baisen@zte.com.cn>

src/mon/OSDMonitor.cc

index 801ae887f80621f22b9da5b0f19e1f3a97f733e8..58869896326cef87676623db464be8982ede4401 100644 (file)
@@ -7703,6 +7703,14 @@ bool OSDMonitor::preprocess_pool_op(MonOpRequestRef op)
 {
   op->mark_osdmon_event(__func__);
   MPoolOp *m = static_cast<MPoolOp*>(op->get_req());
+  
+  if (m->fsid != mon->monmap->fsid) {
+    dout(0) << __func__ << " drop message on fsid " << m->fsid
+            << " != " << mon->monmap->fsid << " for " << *m << dendl;
+    _pool_op_reply(op, -EINVAL, osdmap.get_epoch());
+    return true;
+  }
+
   if (m->op == POOL_OP_CREATE)
     return preprocess_pool_op_create(op);