rc.d/zfs: Add shutdown to KEYWORDS

The problem is that Without walling /etc/rc.d/zfs on shutdown, resources
associated with ZFS mounts are not freed and the jails will remain in dying
state. In addition, the dataset is now in a dangling state, as the jail it
is attached to is dying.

A known workaround for jails was to add the following lines
to /etc/jail.conf, to make sure that "service zfs stop" is run
when the jail is stopped:

    exec.stop = "/bin/sh /etc/rc.shutdown";
    exec.stop += "/usr/sbin/service zfs stop || /usr/bin/true";

While the workaround seems to be okay-ish for the jail situation, it is
still unclean. However, for physical hosts this may wreak havoc with the
pool if shared spares are used, as "zfs unshare" is never invoked on
shutdown.

PR:		147444
Submitted by:	Markus Stoff <markus__stoffdv_at>
Reported by:	Mykah <mburkhardt__exavault_com>
Reviewed by:	cy
Approved by:	cy (src)
MFC after:	1 week
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D27039
This commit is contained in:
Mateusz Piotrowski 2020-11-03 10:02:52 +00:00
parent eaa5afcefa
commit 0cadbd6cd2
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=367291

View File

@ -6,6 +6,7 @@
# PROVIDE: zfs
# REQUIRE: zfsbe
# BEFORE: FILESYSTEMS var
# KEYWORD: shutdown
. /etc/rc.subr