diff options
author | delphij <delphij@FreeBSD.org> | 2014-09-17 02:32:22 +0000 |
---|---|---|
committer | delphij <delphij@FreeBSD.org> | 2014-09-17 02:32:22 +0000 |
commit | f38530676caf0a6e9637453a93d886cd96f5c9ae (patch) | |
tree | 58786bc3c1dfc4c908ece1d82cc44b797fc8f4ec /etc | |
parent | 1642671ec5727db3d568e4db1c8e6b9fd2063208 (diff) | |
download | FreeBSD-src-f38530676caf0a6e9637453a93d886cd96f5c9ae.zip FreeBSD-src-f38530676caf0a6e9637453a93d886cd96f5c9ae.tar.gz |
Use a devd event to start hv_kvpd instead of doing so in rc.d script.
This is cleaner and eliminates the unneeded startup of KVP daemon on
systems that do not run as a Hyper-V guest.
Submitted by: hrs
X-MFC-with: 271493, 271688, 271699
Diffstat (limited to 'etc')
-rw-r--r-- | etc/defaults/rc.conf | 2 | ||||
-rw-r--r-- | etc/devd/Makefile | 4 | ||||
-rw-r--r-- | etc/devd/hyperv.conf | 19 | ||||
-rw-r--r-- | etc/rc.d/Makefile | 5 | ||||
-rw-r--r-- | etc/rc.d/hv_kvpd | 16 |
5 files changed, 23 insertions, 23 deletions
diff --git a/etc/defaults/rc.conf b/etc/defaults/rc.conf index 5efe78b..b24e869 100644 --- a/etc/defaults/rc.conf +++ b/etc/defaults/rc.conf @@ -684,8 +684,6 @@ jail_enable="NO" # Set to NO to disable starting of any jails jail_parallel_start="NO" # Start jails in the background jail_list="" # Space separated list of names of jails -hv_kvpd_enable="NO" # Start the Hyper-V key-value Pair Driver hv_kvp(4) - ############################################################## ### Define source_rc_confs, the mechanism used by /etc/rc.* ## ### scripts to source rc_conf_files overrides safely. ## diff --git a/etc/devd/Makefile b/etc/devd/Makefile index 94cafdc..82a5000 100644 --- a/etc/devd/Makefile +++ b/etc/devd/Makefile @@ -18,6 +18,10 @@ FILES+= uath.conf usb.conf FILES+= zfs.conf .endif +.if ${MK_HYPERV} != "no" +FILES+= hyperv.conf +.endif + NO_OBJ= FILESDIR= /etc/devd FILESMODE= 644 diff --git a/etc/devd/hyperv.conf b/etc/devd/hyperv.conf new file mode 100644 index 0000000..8abafa9 --- /dev/null +++ b/etc/devd/hyperv.conf @@ -0,0 +1,19 @@ +# $FreeBSD$ +# +# Hyper-V specific events + +notify 10 { + match "system" "DEVFS"; + match "subsystem" "CDEV"; + match "type" "CREATE"; + match "cdev" "/dev/hv_kvp_dev"; + action "/usr/sbin/hv_kvp_daemon"; +}; + +notify 10 { + match "system" "DEVFS"; + match "subsystem" "CDEV"; + match "type" "DESTROY"; + match "cdev" "/dev/hv_kvp_dev"; + action "pkill -x hv_kvp_daemon"; +}; diff --git a/etc/rc.d/Makefile b/etc/rc.d/Makefile index d0897e3..64e83ac 100644 --- a/etc/rc.d/Makefile +++ b/etc/rc.d/Makefile @@ -57,7 +57,6 @@ FILES= DAEMON \ hostid \ hostid_save \ hostname \ - ${_hv_kvpd} \ inetd \ initrandom \ ip6addrctl \ @@ -193,10 +192,6 @@ _ubthidhci= ubthidhci _casperd= casperd .endif -.if ${MK_HYPERV} != "no" -_hv_kvpd= hv_kvpd -.endif - .if ${MK_UNBOUND} != "no" _unbound= local_unbound .endif diff --git a/etc/rc.d/hv_kvpd b/etc/rc.d/hv_kvpd deleted file mode 100644 index 164ec53..0000000 --- a/etc/rc.d/hv_kvpd +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# -# $FreeBSD$ -# - -# PROVIDE: hv_kvpd - -. /etc/rc.subr - -name="hv_kvp_daemon" -rcvar="hv_kvpd_enable" -command="/usr/sbin/${name}" -required_dirs="/var/db/hyperv" - -load_rc_config $name -run_rc_command "$1" |