kernel - Do not invalidate the vnode+children in the NFS core on ESTALE

* When NFS encounters ESTALE it would try to invalidate the related
  namecache topology in the core socket code, requiring an exclusive
  lock on related namecache entries.  This is not compatible with
  shared namecache locking because it can occur as part of any operation,
  even simple GETATTRs.

* Remove the invalidation for now.  The kernel already has a high-level
  solution in place for terminal nodes but we will also need one for
  traversals.
kernel: Port new device_pager interface from FreeBSD

Some parts implemented by François Tigeot and Matthew Dillon
kernel: add OBJT_MGTDEVICE in some more places
aio_return.3: The return type is ssize_t, not int.
kernel/bus: Remove NULL check after kmalloc with M_INTWAIT (w/o M_NULLOK).

Pointed-out-by: sephe
proto: Fix copy-n-paste error; PR_ASYNC_RCVD should be 0x0800.

It was defined to the same value as PR_ASYNC_SEND.  However, in the
current code base, it does not hurt, since only TCP has this flag set.
drm2: Handle device creation, translate dev_ops functions

* drm_attach, drm_open, drm_close, drm_mmap, drm_read, drm_ioctl modified
  following the model of the existing functions in the old drm/ implementation

* poll and select don't exist on DragonFly and are replaced by kqueue

* Additional fixes from Johannes Hofmann to set ap->a_result in drm_mmap()
  and resolve crashes in drm_open() and drm_ioctl()
drm2: Port d_mmap_single() from FreeBSD
iicbus: add intel_iic to iicbb driver
drm2: Small porting fixes

* Add missing rb-tree function prototype

* Replace member2struct() by container_of() like it was done
  in the original Linux code

* Fix taskqueue_start_threads() call

* Remove unused vm_mmap call
i915: replace several sleep functions by DELAY()
drm2: replace callout_schedule by callout_reset()
i915: Rename pipe to i915_pipe
i915: fix sf_buf_alloc() calls
drm2: Replace or comment out devfs cdevpriv calls
drm2: Translate some vm calls, comment out others
drm2: Properly handle requests passing page boundaries

Change pmap_mapdev_attr() call in drm2 to properly handle
requests passing page boundaries.
drm: switch back from kfree to free and add a NULL check
drm2 porting: Small changes

* don't pass handle to default_pager_alloc()

* call vm_map_find() with fitit TRUE

* use IDX_TO_OFF()/OFF_TO_IDX() macros
drm: Implement vm_fault_quick_hold_pages and vm_page_unhold_pages

Also call vm_page_busy_wait() before vm_page_unwire() to avoid
page not busy asserts in vm_page_unwire() as recommended by dillon.