Index: etc/Makefile =================================================================== --- etc/Makefile +++ etc/Makefile @@ -13,7 +13,6 @@ .endif BIN1= crontab \ - devd.conf \ devfs.conf \ dhclient.conf \ disktab \ @@ -152,7 +151,6 @@ ${_+_}cd ${.CURDIR}/bluetooth; ${MAKE} install .endif ${_+_}cd ${.CURDIR}/defaults; ${MAKE} install - ${_+_}cd ${.CURDIR}/devd; ${MAKE} install ${_+_}cd ${.CURDIR}/gss; ${MAKE} install ${_+_}cd ${.CURDIR}/mtree; ${MAKE} install ${_+_}cd ${SRCTOP}/share/termcap; ${MAKE} etc-termcap Index: etc/devd.conf =================================================================== --- etc/devd.conf +++ etc/devd.conf @@ -1,353 +0,0 @@ -# $FreeBSD$ -# -# Refer to devd.conf(5) and devd(8) man pages for the details on how to -# run and configure devd. -# - -# NB: All regular expressions have an implicit ^$ around them. -# NB: device-name is shorthand for 'match device-name' - -options { - # Each "directory" directive adds a directory to the list of - # directories that we scan for files. Files are loaded in the order - # that they are returned from readdir(3). The rule-sets are combined - # to create a DFA that's used to match events to actions. - directory "/etc/devd"; - directory "/usr/local/etc/devd"; - pid-file "/var/run/devd.pid"; - - # Setup some shorthand for regex that we use later in the file. - #XXX Yes, these are gross -- imp - set scsi-controller-regex - "(aac|adv|adw|aha|ahc|ahd|aic|amr|bt|ciss|dpt|\ - esp|ida|iir|ips|isp|mlx|mly|mpr|mps|mpt|ncr|ncv|nsp|stg|sym|\ - trm)\ - [0-9]+"; - set wifi-driver-regex - "(ath|bwi|bwn|ipw|iwi|iwm|iwn|malo|mwl|ral|rsu|rtwn|rum|run|\ - uath|upgt|ural|urtw|wi|wpi|wtap|zyd)[0-9]+"; -}; - -# Note that the attach/detach with the highest value wins, so that one can -# override these general rules. - -# -# Configure the interface on attach. Due to a historical accident, this -# script is called pccard_ether. -# -# NB: DETACH events are ignored; the kernel should handle all cleanup -# (routes, arp cache). Beware of races against immediate create -# of a device with the same name; e.g. -# ifconfig bridge0 destroy; ifconfig bridge0 create -# -notify 0 { - match "system" "IFNET"; - match "subsystem" "!usbus[0-9]+"; - match "type" "ATTACH"; - action "/etc/pccard_ether $subsystem start"; -}; - -# -# Try to start dhclient on Ethernet-like interfaces when the link comes -# up. Only devices that are configured to support DHCP will actually -# run it. No link down rule exists because dhclient automatically exits -# when the link goes down. -# -notify 0 { - match "system" "IFNET"; - match "type" "LINK_UP"; - media-type "ethernet"; - action "service dhclient quietstart $subsystem"; -}; - -# -# Like Ethernet devices, but separate because 802.11 require spawning -# wlan(4) interface. -# -attach 0 { - device-name "$wifi-driver-regex"; - action "/etc/pccard_ether $device-name startchildren"; -}; -detach 0 { - device-name "$wifi-driver-regex"; - action "/etc/pccard_ether $device-name stopchildren"; -}; -notify 0 { - match "system" "IFNET"; - match "type" "LINK_UP"; - media-type "802.11"; - action "service dhclient quietstart $subsystem"; -}; - -# An entry like this might be in a different file, but is included here -# as an example of how to override things. Normally 'ed50' would match -# the above attach/detach stuff, but the value of 100 makes it -# hard wired to 1.2.3.4. -attach 100 { - device-name "ed50"; - action "ifconfig $device-name inet 1.2.3.4 netmask 0xffff0000"; -}; -detach 100 { - device-name "ed50"; -}; - -# When a USB Bluetooth dongle appears, activate it -attach 100 { - device-name "ubt[0-9]+"; - action "service bluetooth quietstart $device-name"; -}; -detach 100 { - device-name "ubt[0-9]+"; - action "service bluetooth quietstop $device-name"; -}; - -# Firmware downloader for Atheros AR3011 based USB Bluetooth devices -#attach 100 { -# match "vendor" "0x0cf3"; -# match "product" "0x3000"; -# action "sleep 2 && /usr/sbin/ath3kfw -d $device-name -f /usr/local/etc/ath3k-1.fw"; -#}; - -# When a USB keyboard arrives, attach it as the console keyboard. -attach 100 { - device-name "ukbd0"; - action "service syscons setkeyboard /dev/ukbd0"; -}; -detach 100 { - device-name "ukbd0"; - action "service syscons setkeyboard /dev/kbd0"; -}; - -notify 100 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "CREATE"; - match "cdev" "atp[0-9]+"; - - action "service moused quietstart $cdev"; -}; - -notify 100 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "CREATE"; - match "cdev" "ums[0-9]+"; - - action "service moused quietstart $cdev"; -}; - -notify 100 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "CREATE"; - match "cdev" "wsp[0-9]+"; - - action "service moused quietstart $cdev"; -}; - -notify 100 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "DESTROY"; - match "cdev" "ums[0-9]+"; - - action "service moused stop $cdev"; -}; - -# Firmware download into the ActiveWire board. After the firmware download is -# done, the device detaches and reappears as something new and shiny -# automatically. -attach 100 { - match "vendor" "0x0854"; - match "product" "0x0100"; - match "release" "0x0000"; - action "/usr/local/bin/ezdownload -f /usr/local/share/usb/firmware/0854.0100.0_01.hex $device-name"; -}; - -# Firmware download for Entrega Serial DB25 adapter. -attach 100 { - match "vendor" "0x1645"; - match "product" "0x8001"; - match "release" "0x0101"; - action "if ! kldstat -n usio > /dev/null 2>&1 ; then kldload usio; fi; /usr/sbin/ezdownload -v -f /usr/share/usb/firmware/1645.8001.0101 /dev/$device-name"; -}; - -# This entry starts the ColdSync tool in daemon mode. Make sure you have an up -# to date /usr/local/etc/palms. We override the 'listen' settings for port and -# type in /usr/local/etc/coldsync.conf. -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x082d"; - match "product" "0x0100"; - match "release" "0x0100"; - action "/usr/local/bin/coldsync -md -p /dev/$cdev -t usb"; -}; - -# -# Rescan SCSI device-names on attach, but not detach. However, it is -# disabled by default due to reports of problems. -# -attach 0 { - device-name "$scsi-controller-regex"; -// action "camcontrol rescan all"; -}; - -# Don't even try to second guess what to do about drivers that don't -# match here. Instead, pass it off to syslog. Commented out for the -# moment, as the pnpinfo variable isn't set in devd yet. Individual -# variables within the bus supplied pnpinfo are set. -nomatch 0 { -# action "logger Unknown device: $pnpinfo $location $bus"; -}; - -# Various logging of unknown devices. -nomatch 10 { - match "bus" "uhub[0-9]+"; - action "logger Unknown USB device: vendor $vendor product $product \ - bus $bus"; -}; - -# Some PC-CARDs don't offer numerical manufacturer/product IDs, just -# show the CIS info there. -nomatch 20 { - match "bus" "pccard[0-9]+"; - match "manufacturer" "0xffffffff"; - match "product" "0xffffffff"; - action "logger Unknown PCCARD device: CISproduct $cisproduct \ - CIS-vendor $cisvendor bus $bus"; -}; - -nomatch 10 { - match "bus" "pccard[0-9]+"; - action "logger Unknown PCCARD device: manufacturer $manufacturer \ - product $product CISproduct $cisproduct CIS-vendor \ - $cisvendor bus $bus"; -}; - -nomatch 10 { - match "bus" "cardbus[0-9]+"; - action "logger Unknown Cardbus device: device $device class $class \ - vendor $vendor bus $bus"; -}; - -# Switch power profiles when the AC line state changes. -notify 10 { - match "system" "ACPI"; - match "subsystem" "ACAD"; - action "service power_profile $notify"; -}; - -# Notify all users before beginning emergency shutdown when we get -# a _CRT or _HOT thermal event and we're going to power down the system -# very soon. -notify 10 { - match "system" "ACPI"; - match "subsystem" "Thermal"; - match "notify" "0xcc"; - action "logger -p kern.emerg 'WARNING: system temperature too high, shutting down soon!'"; -}; - -# User requested suspend, so perform preparation steps and then execute -# the actual suspend process. -notify 10 { - match "system" "ACPI"; - match "subsystem" "Suspend"; - action "/etc/rc.suspend acpi $notify"; -}; -notify 10 { - match "system" "ACPI"; - match "subsystem" "Resume"; - action "/etc/rc.resume acpi $notify"; -}; - -/* EXAMPLES TO END OF FILE - -# An example of something that a vendor might install if you were to -# add their device. This might reside in /usr/local/etc/devd/deqna.conf. -# A deqna is, in this hypothetical example, a pccard ethernet-like device. -# Students of history may know other devices by this name, and will get -# the in-jokes in this entry. -nomatch 10 { - match "bus" "pccard[0-9]+"; - match "manufacturer" "0x1234"; - match "product" "0x2323"; - action "kldload -n if_deqna"; -}; -attach 10 { - device-name "deqna[0-9]+"; - action "/etc/pccard_ether $device-name start"; -}; -detach 10 { - device-name "deqna[0-9]+"; - action "/etc/pccard_ether $device-name stop"; -}; - -# Examples of notify hooks. A notify is a generic way for a kernel -# subsystem to send event notification to userland. - -# Here are some examples of ACPI notify handlers. ACPI subsystems that -# generate notifies include the AC adapter, power/sleep buttons, -# control method batteries, lid switch, and thermal zones. -# -# Information returned is not always the same as the ACPI notify -# events. See the ACPI specification for more information about -# notifies. Here is the information returned for each subsystem: -# -# ACAD: AC line state (0 is offline, 1 is online) -# Button: Button pressed (0 for power, 1 for sleep) -# CMBAT: ACPI battery events -# Lid: Lid state (0 is closed, 1 is open) -# Suspend, Resume: Suspend and resume notification -# Thermal: ACPI thermal zone events -# -# This example calls a script when the AC state changes, passing the -# notify value as the first argument. If the state is 0x00, it might -# call some sysctls to implement economy mode. If 0x01, it might set -# the mode to performance. -notify 10 { - match "system" "ACPI"; - match "subsystem" "ACAD"; - action "/etc/acpi_ac $notify"; -}; - -# This example works around a memory leak in PostgreSQL, restarting -# it when the "user:postgres:swap:devctl=1G" rctl(8) rule gets triggered. -notify 0 { - match "system" "RCTL"; - match "rule" "user:770:swap:.*"; - action "service postgresql restart"; -}; - -# Discard autofs caches, useful for the -media special map. -notify 100 { - match "system" "GEOM"; - match "subsystem" "DEV"; - action "/usr/sbin/automount -c"; -}; - -# Handle userland coredumps. -# This commented out handler makes it possible to run an -# automated debugging session after the core dump is generated. -# Replace action with a proper coredump handler, but be aware that -# it will run with elevated privileges. -notify 10 { - match "system" "kernel"; - match "subsystem" "signal"; - match "type" "coredump"; - action "logger $comm $core"; -}; - -# Let the init(8) know there's a new USB serial interface it might -# want to run getty(8) for. This includes device-side tty created -# by usb_template(4). -notify 100 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "CREATE"; - match "cdev" "ttyU[0-9]+"; - action "/sbin/init q"; -}; - -*/ Index: etc/devd/Makefile =================================================================== --- etc/devd/Makefile +++ etc/devd/Makefile @@ -1,34 +0,0 @@ -# $FreeBSD$ - -.include - -FILEGROUPS= FILES - -FILES+= devmatch.conf - -.if ${MACHINE} == "powerpc" -FILES+= apple.conf -.endif - -.if ${MACHINE} == "amd64" || ${MACHINE} == "i386" -.if ${MK_ACPI} != "no" -FILES+= asus.conf -.endif -.if ${MK_HYPERV} != "no" -FILES+= hyperv.conf -.endif -.endif - -.if ${MK_USB} != "no" -FILES+= uath.conf ulpt.conf -.endif - -.if ${MK_ZFS} != "no" -FILES+= zfs.conf -.endif - -NO_OBJ= -FILESDIR= /etc/devd -FILESMODE= 644 - -.include Index: etc/devd/apple.conf =================================================================== --- etc/devd/apple.conf +++ etc/devd/apple.conf @@ -1,80 +0,0 @@ -# $FreeBSD$ -# -# PowerPC Apple specific devd events - -# Keyboard power key -notify 0 { - match "system" "PMU"; - match "subsystem" "Button"; - action "shutdown -p now"; -}; - - -# PowerBook and iBook lid close. -notify 0 { - match "system" "PMU"; - match "subsystem" "lid"; - match "type" "close"; - action "shutdown -p now"; -}; - - -# The next blocks enable brightness hotkeys that can be found on Apple laptops -notify 0 { - match "system" "PMU"; - match "subsystem" "keys"; - match "type" "brightness"; - match "notify" "down"; - action "sysctl dev.backlight.0.level=\ - $(expr `sysctl -n dev.backlight.0.level` - 10)"; -}; - -notify 0 { - match "system" "PMU"; - match "subsystem" "keys"; - match "type" "brightness"; - match "notify" "up"; - action "sysctl dev.backlight.0.level=\ - $(expr `sysctl -n dev.backlight.0.level` + 10)"; -}; - - -# The next blocks enable volume hotkeys that can be found on Apple laptops -notify 0 { - match "system" "PMU"; - match "subsystem" "keys"; - match "type" "mute"; - action "mixer 0"; -}; - -notify 0 { - match "system" "PMU"; - match "subsystem" "keys"; - match "type" "volume"; - match "notify" "down"; - action "mixer vol -10"; -}; - -notify 0 { - match "system" "PMU"; - match "subsystem" "keys"; - match "type" "volume"; - match "notify" "up"; - action "mixer vol +10"; -}; - -# Eject key -notify 0 { - match "system" "PMU"; - match "subsystem" "keys"; - match "type" "eject"; - action "camcontrol eject cd0"; -}; - -# Equivalent to the ACPI/ACAD notify -notify 10 { - match "system" "PMU"; - match "subsystem" "POWER"; - match "type" "ACLINE"; - action "service power_profile $notify"; -}; Index: etc/devd/asus.conf =================================================================== --- etc/devd/asus.conf +++ etc/devd/asus.conf @@ -1,74 +0,0 @@ -# $FreeBSD$ -# -# ASUS specific devd events - -# The next blocks enable volume hotkeys that can be found on the Asus laptops -notify 0 { - match "system" "ACPI"; - match "subsystem" "ASUS"; - match "notify" "0x32"; - action "mixer 0"; -}; - -notify 0 { - match "system" "ACPI"; - match "subsystem" "ASUS"; - match "notify" "0x31"; - action "mixer vol -10"; -}; - -notify 0 { - match "system" "ACPI"; - match "subsystem" "ASUS"; - match "notify" "0x30"; - action "mixer vol +10"; -}; - -# The next blocks enable volume hotkeys that can be found on the Asus EeePC -notify 0 { - match "system" "ACPI"; - match "subsystem" "ASUS-Eee"; - match "notify" "0x13"; - action "mixer 0"; -}; - -notify 0 { - match "system" "ACPI"; - match "subsystem" "ASUS-Eee"; - match "notify" "0x14"; - action "mixer vol -10"; -}; - -notify 0 { - match "system" "ACPI"; - match "subsystem" "ASUS-Eee"; - match "notify" "0x15"; - action "mixer vol +10"; -}; - -# Enable user hotkeys that can be found on the Asus EeePC -# The four keys above the keyboard notify 0x1a through to 0x1d respectively -#notify 0 { -# match "system" "ACPI"; -# match "subsystem" "ASUS-Eee"; -# match "notify" "0x1a"; -# action ""; -#}; -#notify 0 { -# match "system" "ACPI"; -# match "subsystem" "ASUS-Eee"; -# match "notify" "0x1b"; -# action ""; -#}; -#notify 0 { -# match "system" "ACPI"; -# match "subsystem" "ASUS-Eee"; -# match "notify" "0x1c"; -# action ""; -#}; -#notify 0 { -# match "system" "ACPI"; -# match "subsystem" "ASUS-Eee"; -# match "notify" "0x1d"; -# action ""; -#}; Index: etc/devd/devmatch.conf =================================================================== --- etc/devd/devmatch.conf +++ etc/devd/devmatch.conf @@ -1,20 +0,0 @@ -# -# $FreeBSD$ -# - -# -# Example devd configuration file for automatically -# loading what modules we can based on nomatch -# events. -# -# Generic NOMATCH event -nomatch 100 { - action "service devmatch quietstart '?'$_"; -}; - -# Add the following to devd.conf to prevent this from running: -# nomatch 1000 { -# action "true"; -# }; -# it replaces the generic event with one of higher priority that -# does nothing. You can also set 'devmatch_enable=NO' in /etc/rc.conf Index: etc/devd/hyperv.conf =================================================================== --- etc/devd/hyperv.conf +++ etc/devd/hyperv.conf @@ -1,108 +0,0 @@ -# $FreeBSD$ -# -# Hyper-V specific events - -notify 10 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "CREATE"; - match "cdev" "hv_kvp_dev"; - action "/usr/sbin/hv_kvp_daemon"; -}; - -notify 10 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "DESTROY"; - match "cdev" "hv_kvp_dev"; - action "pkill -x hv_kvp_daemon"; -}; - -notify 11 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "CREATE"; - match "cdev" "hv_fsvss_dev"; - action "/usr/sbin/hv_vss_daemon"; -}; - -notify 11 { - match "system" "DEVFS"; - match "subsystem" "CDEV"; - match "type" "DESTROY"; - match "cdev" "hv_fsvss_dev"; - action "pkill -x hv_vss_daemon"; -}; - -# -# Rules for non-transparent network VF. -# -# How network VF works with hn(4) on Hyper-V in non-transparent mode: -# -# - Each network VF has a corresponding hn(4). -# - The network VF and the it's corresponding hn(4) have the same hardware -# address. -# - Once the network VF is up, e.g. ifconfig VF up: -# o All of the transmission should go through the network VF. -# o Most of the reception goes through the network VF. -# o Small amount of reception may go through the corresponding hn(4). -# This reception will happen, even if the corresponding hn(4) is -# down. The corresponding hn(4) will change the reception interface -# to the network VF, so that network layer and application layer will -# be tricked into thinking that these packets were received by the -# network VF. -# o The corresponding hn(4) pretends the physical link is down. -# - Once the network VF is down or detached: -# o All of the transmission should go through the corresponding hn(4). -# o All of the reception goes through the corresponding hn(4). -# o The corresponding hn(4) fallbacks to the original physical link -# detection logic. -# -# All these features are mainly used to help live migration, during which -# the network VF will be detached, while the network communication to the -# VM must not be cut off. In order to reach this level of live migration -# transparency, we use failover mode lagg(4) with the network VF and the -# corresponding hn(4) attached to it. -# -# To ease user configuration for both network VF and non-network VF, the -# lagg(4) will be created by the following rules, and the configuration -# of the corresponding hn(4) will be applied to the lagg(4) automatically. -# -# NOTE: -# If live migration is not needed at all, the following rules could be -# commented out, and the network VF interface could be used exclusively. -# Most often the corresponding hn(4) could be completely ignored. -# -# -# Default workflow for the network VF bringup: -# 1) ETHERNET/IFATTACH -> VF interface up (delayed by rc.conf hyperv_vf_delay -# seconds). This operation will trigger HYPERV_NIC_VF/VF_UP. -# 2) HYPERV_NIC_VF/VF_UP: -# a) Create laggX coresponding to hnX. -# b) Add hnX and VF to laggX. -# c) Whack all previous network configuration on hnX, including stopping -# dhclient. -# d) Apply rc.conf ifconfig_hnX to laggX; i.e. including starting dhclient. -# -# NOTE: -# HYPERV_NIC_VF/VF_UP action script could be customized per-interface by -# adding /usr/libexec/hyperv/hyperv_vfup.hnX script. -# /usr/libexec/hyperv/hyperv_vfup could be used as the template for the -# customized per-interface script. -# -# NOTE: -# For transparent network VF, hyperv_vfattach does nothing and -# HYPERV_NIC_VF/VF_UP will not be triggered at all. -# - -notify 10 { - match "system" "HYPERV_NIC_VF"; - match "type" "VF_UP"; - action "/usr/libexec/hyperv/hyperv_vfup $subsystem"; -}; - -notify 10 { - match "system" "ETHERNET"; - match "type" "IFATTACH"; - action "/usr/libexec/hyperv/hyperv_vfattach $subsystem 0"; -}; Index: etc/devd/uath.conf =================================================================== --- etc/devd/uath.conf +++ etc/devd/uath.conf @@ -1,146 +0,0 @@ -# $FreeBSD$ -# -# Atheros USB wireless network device specific devd events - -# Accton -# SMCWUSBT-G2 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x083a"; - match "product" "0x4507"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Atheros Communications -# AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x168c"; - match "product" "0x0002"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Atheros Communications -# AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x0cf3"; - match "product" "(0x0002|0x0004|0x0006)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Conceptronic -# AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x0d8e"; - match "product" "(0x7802|0x7812)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# D-Link -# DWL-AG132, DWL-G132 and DWL-AG122 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x2001"; - match "product" "(0x3a01|0x3a03|0x3a05)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# D-Link -# DWA-120 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x07d1"; - match "product" "0x3a0c"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Gigaset -# SMCWUSBT-G -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x1690"; - match "product" "(0x0711|0x0713)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Global Sun Technology -# AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x16ab"; - match "product" "(0x7802|0x7812)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# BayNETGEAR -# WG111U -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x0846"; - match "product" "0x4301"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Netgear -# WG111T and WPN111 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x1385"; - match "product" "(0x4251|0x5f01)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# U-MEDIA Communications -# TEW-444UB and AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x157e"; - match "product" "(0x3007|0x3206)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Wistron NeWeb -# AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x1435"; - match "product" "(0x0827|0x0829)"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; - -# Z-Com -# AR5523 -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x0cde"; - match "product" "0x0013"; - action "/usr/sbin/uathload -d /dev/$cdev"; -}; Index: etc/devd/ulpt.conf =================================================================== --- etc/devd/ulpt.conf +++ etc/devd/ulpt.conf @@ -1,18 +0,0 @@ -# -# $FreeBSD$ -# - -# -# Example devd configuration file for USB printers. -# Uncomment the notify rule below to enable. -# -# Generic USB printer devices -#notify 100 { -# match "system" "USB"; -# match "subsystem" "INTERFACE"; -# match "type" "ATTACH"; -# match "intclass" "0x07"; -# match "intsubclass" "0x01"; -# match "intprotocol" "(0x01|0x02|0x03)"; -# action "chown root:wheel /dev/$cdev"; -#}; Index: etc/devd/zfs.conf =================================================================== --- etc/devd/zfs.conf +++ etc/devd/zfs.conf @@ -1,77 +0,0 @@ -# $FreeBSD$ -# -# Sample ZFS problem reports handling. - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.checksum"; - action "logger -p local7.warn -t ZFS 'checksum mismatch, zpool=$pool path=$vdev_path offset=$zio_offset size=$zio_size'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.io"; - action "logger -p local7.warn -t ZFS 'vdev I/O failure, zpool=$pool path=$vdev_path offset=$zio_offset size=$zio_size error=$zio_err'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.data"; - action "logger -p local7.warn -t ZFS 'pool I/O failure, zpool=$pool error=$zio_err'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.zpool"; - action "logger -p local7.err -t ZFS 'failed to load zpool $pool'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.vdev\..*"; - action "logger -p local7.err -t ZFS 'vdev problem, zpool=$pool path=$vdev_path type=$type'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.io_failure"; - action "logger -p local7.alert -t ZFS 'catastrophic pool I/O failure, zpool=$pool'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.probe_failure"; - action "logger -p local7.err -t ZFS 'vdev probe failure, zpool=$pool path=$vdev_path'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.log_replay"; - action "logger -p local7.err -t ZFS 'pool log replay failure, zpool=$pool'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "fs.zfs.config_cache_write"; - action "logger -p local7.warn -t ZFS 'failed to write zpool.cache, zpool=$pool'"; -}; - - -notify 10 { - match "system" "ZFS"; - match "type" "resource.fs.zfs.removed"; - action "logger -p local7.notice -t ZFS 'vdev is removed, pool_guid=$pool_guid vdev_guid=$vdev_guid'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "resource.fs.zfs.autoreplace"; - action "logger -p local7.info -t ZFS 'autoreplace is configured for vdev, pool_guid=$pool_guid vdev_guid=$vdev_guid'"; -}; - -notify 10 { - match "system" "ZFS"; - match "type" "resource.fs.zfs.statechange"; - action "logger -p local7.notice -t ZFS 'vdev state changed, pool_guid=$pool_guid vdev_guid=$vdev_guid'"; -}; - Index: sbin/devd/Makefile =================================================================== --- sbin/devd/Makefile +++ sbin/devd/Makefile @@ -4,6 +4,30 @@ WARNS?= 3 PACKAGE=runtime +CONFGROUPS= CONFS DEVD +CONFS= devd.conf +DEVD= devmatch.conf +DEVDDIR= /etc/devd +.if ${MK_ACPI} != "no" +DEVD+= asus.conf +.endif + +.if ${MK_HYPERV} != "no" +DEVD+= hyperv.conf +.endif + +.if ${MK_USB} != "no" +DEVD+= uath.conf ulpt.conf +.endif + +.if ${MACHINE_ARCH} == "powerpc" +DEVD+= apple.conf +.endif + +.if ${MK_ZFS} != "no" +DEVD+= zfs.conf +.endif + PROG_CXX=devd SRCS= devd.cc token.l parse.y y.tab.h MAN= devd.8 devd.conf.5