]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: fix nullptr dereference in MDCache::finish_rollback 37243/head
authorYan, Zheng <zyan@redhat.com>
Tue, 14 Jul 2020 12:40:11 +0000 (20:40 +0800)
committerVicente Cheng <freeze.bilsted@gmail.com>
Fri, 18 Sep 2020 14:55:49 +0000 (14:55 +0000)
introduced by commit 4940ab62e0d
"mds: preserve ESlaveUpdate::OP_PREPARE logevent before doing commit"

Fixes: https://tracker.ceph.com/issues/46533
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
(cherry picked from commit 6715514aa577842942a1221a0f25924c53e03834)

src/mds/MDCache.cc

index 88eece19f00bb485c42581b7cc838641626986bd..84647a339529b2a7125ae2f4164e321b6ae91720 100644 (file)
@@ -3587,7 +3587,7 @@ MDSlaveUpdate* MDCache::get_uncommitted_slave(metareqid_t reqid, mds_rank_t mast
 }
 
 void MDCache::finish_rollback(metareqid_t reqid, MDRequestRef& mdr) {
-  auto p = resolve_need_rollback.find(mdr->reqid);
+  auto p = resolve_need_rollback.find(reqid);
   ceph_assert(p != resolve_need_rollback.end());
   if (mds->is_resolve()) {
     finish_uncommitted_slave(reqid, false);