10696600cSBjoern A. Zeeb#!/bin/sh 20696600cSBjoern A. Zeeb# 30696600cSBjoern A. Zeeb# 40696600cSBjoern A. Zeeb 50696600cSBjoern A. Zeeb# PROVIDE: devd 60696600cSBjoern A. Zeeb# REQUIRE: netif ldconfig 70696600cSBjoern A. Zeeb# BEFORE: NETWORKING mountcritremote 80696600cSBjoern A. Zeeb# KEYWORD: nojail shutdown 90696600cSBjoern A. Zeeb 100696600cSBjoern A. Zeeb. /etc/rc.subr 110696600cSBjoern A. Zeeb 120696600cSBjoern A. Zeebname="devd" 130696600cSBjoern A. Zeebdesc="Device state change daemon" 140696600cSBjoern A. Zeebrcvar="devd_enable" 150696600cSBjoern A. Zeebcommand="/sbin/${name}" 160696600cSBjoern A. Zeeb 170696600cSBjoern A. Zeebstart_precmd=${name}_prestart 180696600cSBjoern A. Zeebstop_precmd=find_pidfile 190696600cSBjoern A. Zeeb 200696600cSBjoern A. Zeebfind_pidfile() 210696600cSBjoern A. Zeeb{ 220696600cSBjoern A. Zeeb if get_pidfile_from_conf pid-file /etc/devd.conf; then 230696600cSBjoern A. Zeeb pidfile="$_pidfile_from_conf" 240696600cSBjoern A. Zeeb else 250696600cSBjoern A. Zeeb pidfile="/var/run/${name}.pid" 260696600cSBjoern A. Zeeb fi 270696600cSBjoern A. Zeeb} 280696600cSBjoern A. Zeeb 290696600cSBjoern A. Zeebdevd_prestart() 300696600cSBjoern A. Zeeb{ 310696600cSBjoern A. Zeeb find_pidfile 320696600cSBjoern A. Zeeb 330696600cSBjoern A. Zeeb # If devd is disabled, turn it off in the kernel to avoid unnecessary 340696600cSBjoern A. Zeeb # memory usage. 350696600cSBjoern A. Zeeb if ! checkyesno ${rcvar}; then 360696600cSBjoern A. Zeeb $SYSCTL hw.bus.devctl_queue=0 370696600cSBjoern A. Zeeb fi 380696600cSBjoern A. Zeeb} 390696600cSBjoern A. Zeeb 400696600cSBjoern A. Zeebload_rc_config $name 41*f99f0ee1SAlexander Leidinger 42*f99f0ee1SAlexander Leidinger# doesn't make sense to run in a svcj: executing potential privileged operations 43*f99f0ee1SAlexander Leidingerdevd_svcj="NO" 44*f99f0ee1SAlexander Leidinger 450696600cSBjoern A. Zeebrun_rc_command "$1" 46