]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
client: reset unmounting flag to false when starting a new mount 17095/head
authorJeff Layton <jlayton@redhat.com>
Fri, 25 Aug 2017 12:31:47 +0000 (08:31 -0400)
committerJeff Layton <jlayton@redhat.com>
Fri, 25 Aug 2017 12:31:49 +0000 (08:31 -0400)
Once the "unmounting" flag goes to true, it never flips back to false.
We don't have a lot of checks for "unmounting" in the code, but they're
in some subtle places today and I plan to add more later.

It's not clear to me whether it's possible (or advisable) to reuse a
Client that has previously been unmounted. It most certainly won't work
as expected today, and the checks I'll be adding will break it for sure.

Make sure we clear the unmounting flag when we go to re-mount the
Client.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
src/client/Client.cc

index 183a661a544d5afda41fe70a267cdfd7ffd3a78b..5afdb37c11b5f491321f2d7814a1f4eecbac3dea 100644 (file)
@@ -5677,6 +5677,8 @@ int Client::mount(const std::string &mount_root, const UserPerm& perms,
     return 0;
   }
 
+  unmounting = false;
+
   int r = authenticate();
   if (r < 0) {
     lderr(cct) << "authentication failed: " << cpp_strerror(r) << dendl;