disable KMS for now; it breaks UMS + (old) radeondrm.
radeon depends on firmload.

Noted by rjs@.
Use two different mutexes for tx and rx

This change splits the mutex of wm into two: one for tx and the other
for rx. By doing so, lock contentions can be reduced. We lock both for
other operations that need locking, e.g., init, stop and ioctl.

The modification doesn't change the behavior of the driver.
Enable net.bpf.jit only if MODULAR and BPFJIT. Tweak a warning about postponed
jit activation.
PR/49045: Tetsuya Isaki: remove remaining caddr_t in ptrace(2)
SPEC_MAXOFFSET_T doesn't exist anywhere else, so don't use it here
either.
add missing KASSERT()s at the top of sockin_usrreq(), req shall not be
either of these operations.

>       KASSERT(req != PRU_BIND);
>       KASSERT(req != PRU_LISTEN);
GCC sets up u?int_fast8_t to be int, so be consistent with it.
Take rdev->fence_lock around the wakeup.
Add a mutex for global variables of if_ethersubr.c

To initialize the mutex, we introduce etherinit that is called from ifinit1.
Fix parenthesis on __ha macro