diff --git a/tasks/cephfs/fuse_mount.py b/tasks/cephfs/fuse_mount.py index 963bea49b85..5bf21c53b98 100644 --- a/tasks/cephfs/fuse_mount.py +++ b/tasks/cephfs/fuse_mount.py @@ -7,6 +7,7 @@ import logging from textwrap import dedent from teuthology import misc +from teuthology.contextutil import MaxWhileTries from teuthology.orchestra import run from teuthology.orchestra.run import CommandFailedError from .mount import CephFSMount @@ -239,7 +240,12 @@ class FuseMount(CephFSMount): try: if self.fuse_daemon: - self.fuse_daemon.wait() + # Permit a timeout, so that we do not block forever + run.wait([self.fuse_daemon], 900) + except MaxWhileTries: + log.error("process failed to terminate after unmount. This probably" + "indicates a bug within ceph-fuse.") + raise except CommandFailedError: pass