On Wed, Nov 30, 2022 at 12:07:35AM +0100, Andreas Gruenbacher wrote: > So far, when a frozen filesystem is last unmouted, it turns into a > zombie rather than being shut down; to shut it down, it needs to be > remounted and thawed first. > > That's silly for local filesystems, but it's worse for filesystems like > gfs2 which freeze a filesystem cluster-wide when fsfreeze is called on > one of the nodes. Only the node that initiated a freeze is allowed to > thaw the filesystem it again. On the other nodes, the only way to shut > down the remotely frozen filesystem is to power off. > > Change that on gfs2 so that frozen filesystems are immediately shut down > when they are last unmounted and removed from the filesystem namespace. > This doesn't require writing to the filesystem, so the remaining cluster > nodes remain undisturbed. So what are your preferred rules wrt active references vs. bdev freeze depth vs. actual frozen state of fs? The current situation is already headache-inducing (and I wouldn't bet on correctness - e.g. FITHAW vs. XFS_IOC_GOINDOWN is interesting). And the variety of callbacks (->thaw_super() vs. ->unfreeze_fs(), etc.) also doesn't help, to put it mildly... Sure, gfs2 has unusual needs in that area, but it would be really nice to get that thing regularized to something that would work for all users of that machinery.