MFC r246472:
Stop translating the ERESTART error from the open(2) into EINTR.
Posix requires that open(2) is restartable for SA_RESTART.
MFC r246484:
Allow ptrace(2) operation on the child created by vfork(2), if the
debugger is not the parent.
MFC r246801:
Assert that user address is never qremoved.
MFC r246802:
Print slightly more useful information on the 'bad pte' panic.
MFC r246476:
Document the ERESTART translation to EINTR for devfs nodes.
MFC r246485:
Document the detail of interaction between vfork and PT_TRACEME.
MFC r246486:
Document P_PPTRACE.
MFC r246616 and r246759:

- Move scratch data from the USB bus structure to the USB device
structure so that simultaneous access cannot happen. Protect scratch
area using the enumeration lock.
- Reduce stack usage in usbd_transfer_setup() by moving some big stack
members to the scratch area. This saves around 200 bytes of stack.
- Fix a whitespace.
- Protect control requests using the USB device enumeration lock.
- Make sure all callers of usbd_enum_lock() check the return value.
- Remove the control transfer specific lock.
- Bump the FreeBSD version number, hence external USB modules may need
to be recompiled due to a USB device structure change.