Add a custom kernel configuration file for my laptop.
Remove ATA_CAM and related options.
Merge branch 'master' into markj-kernel-config
Add ipdivert.
Merge branch 'master' into markj-kernel-config
Add snp(4).
Add em(4) for VirtualBox.
Merge branch 'master' into markj-kernel-config
Merge branch 'master' into markj-kernel-config
Include the tap(4) driver.
Merge branch 'master' into markj-kernel-config
Merge branch 'master' into markj-kernel-config
Merge branch 'master' into markj-kernel-config
Merge branch 'master' into markj-kernel-config
Merge branch 'master' into markj-kernel-config
Merge branch 'markj-kernel-config' of github.com:markjdb/freebsd into markj-kernel-config
Merge branch 'markj-kernel-config' into 20130624-sdt-module-info
The aim of this branch is to properly handle module load and unload
events with respect to DTrace probes (FBT and SDT in particular). The
basic requirements are that

1. All FBT and SDT probes defined in a module should be created at
   module load time.
2. Any attempt to unload a module while one of its probes is enabled
   should result in an error.
3. All of a module's probes must become inaccessible after a successful
   unload. That is, attempts to enable such a probe should return an
   error to the user rather than resulting in something unexpected or a
   panic (which I would say is expected behaviour at the moment).

To that end, I'm going to add support for module load/unload callbacks
in DTrace. Then providers can implement the corresponding methods
properly, in such a way that the above requirements are met. Requirement
2 shall be implemented by use of a reference count in the struct
linker_file.

This change adds the beginnings of this work: it changes the SDT
provider/probe definition macros to append to a linker set rather than
registering a SYSINIT function. This way the sdt kernel module can just
loop over the set's contents when the module is loaded and create the
corresponding probes. This change also adds the load/unload callbacks.