From 9553b55c4f2e9f77caa59c5fab2d21fd151f8f70 Mon Sep 17 00:00:00 2001 From: Alwin Antreich Date: Wed, 12 Jun 2019 12:32:05 +0200 Subject: [PATCH] cephfs: Exclude _netdev when mounting with fuse Since ceph-fuse is called directly in the CephFS storage plugin, which can not process the _netdev option, mounting the CephFS storage fails when fuse is set in the storage.cfg. This patch moves the _netdev option into the else part of the if fuse is set statement. _netdev is only added if the CephFS kernel client mounts the storage. It seems _netdev is not needed anyway for the fuse mount, as the connection is closed, once the fuse process gets killed on shutdown. Signed-off-by: Alwin Antreich --- PVE/Storage/CephFSPlugin.pm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/PVE/Storage/CephFSPlugin.pm b/PVE/Storage/CephFSPlugin.pm index 16fc316..53491ed 100644 --- a/PVE/Storage/CephFSPlugin.pm +++ b/PVE/Storage/CephFSPlugin.pm @@ -65,11 +65,12 @@ sub cephfs_mount { my $source = "$server:$subdir"; $cmd = ['/bin/mount', '-t', 'ceph', $source, $mountpoint, '-o', "name=$cmd_option->{userid}"]; push @$cmd, '-o', "secretfile=$secretfile" if defined($secretfile); + + # tell systemd that we're network dependent, else it umounts us to late + # on shutdown, when we couldn't connect to the active MDS and thus + # unmount hangs and delays shutdown/reboot (man systemd.mount). + push @$cmd, '-o', '_netdev'; } - # tell systemd that we're network dependent, else it umounts us to late on - # shutdown, when we couldn't connect to the active MDS and thus unmount - # hangs and delays shutdown/reboot (man systemd.mount) - push @$cmd, '-o', '_netdev'; if ($scfg->{options}) { push @$cmd, '-o', $scfg->{options}; -- 2.39.2