MFC r253967:
Wait for the doomed vnode to be detached from the tmpfs
node if sleepable allocation is requested.
MFC r254238:
Correct an EHCI register write.

Reported by:    aseem.jolly@gmail.com
MFH (r254278): fix relative symlinks
MFC r254243:
- Try to fix build of 32-bit compatibility USB support for FreeBSD and
  Linux targets without breaking the existing IOCTL API.

- Remove some not-needed header file inclusions.

- Wrap a long line.

Reported by:	Damjan Jovanovic <damjan.jov@gmail.com>
MFC r250201 from hselasky:

  Add new USB API to get the port path of a USB device.
MFC r250335: Constify libusb_get_pollfds return

  The correct return type, per our libusb(3) man page and the libusb.org
  and libusbx projects (whose interface we intend to follow for our
  libusb), is const struct libusb_pollfd **.
MFC r250342, r251495:

  Add libusb_get_port_path wrapper

  This follows the libusbx API reference at
  http://libusbx.sourceforge.net/api-1.0/group__dev.html

  Add libusb_get_port_numbers

  libusbx deprecated libusb_get_port_path and replaced it with
  libusb_get_port_numbers.  The latter omits an extra parameter which was
  unused in the FreeBSD implementation anyway.
MFC r254457
  Do not use potentially stale thread in kthread_add()

  When an existing process is provided, the thread selected to use
  to initialize the new thread could have exited and be reaped.
  Acquire the proc lock earlier to ensure the thread remains valid.
Merge remote-tracking branch 'upstream-github/stable/9' into stable/9