oce: Don't clear M_PKTHDR when create mbuf chain
socket: Avoid possible race between netmsg_so_notify() and sowakeup() (2)

If predict ever blocks, 'tok' will be released, so SSB_MEVENT set
beforehand could have been cleared when we reach here.  In case
that happens, we set SSB_MEVENT again, after the notify has been
queued.
socket: Use modulo-N for SO_REUSEPORT socket locating

This greatly reduces TCP listen socket completion queue pool token
contention thus saves more cpu time.

When the testing box (i7-2600, broadcom 5719) is doing 335Kconns/s,
TCP listen socket completion queue token contention is reduced from
20K/s to 500/s and the idle time on each hyperthread is increased by
~5%.
Remove duplicated bitstring.h file

Noticed-by: vsrinivas
tools: Add bench tools for accept(2) and connect(2)

The main reasons behind making these tools instead of using netperf TCP_CC
test are:
- Netperf TCP_CC creates new server for each testing client
- Netperf TCP_CC creates new listen socket on different TCP port for each
  testing client
- Netperf TCP_CC created listen socket is in blocking mode
- Netperf TCP_CC closes accepted sockets immediately

All of the above listed items make netperf TCP_CC do not reflect real life
TCP server usage.

Tools in accept_connect:
- "connect_client"
  Fork certain amount of processes to perform blocking connect(2)/close(2)
  for the certain amount of time.
- "accpet_server"
  Fork certain amount of processes to perform blocking accept(2) on the same
  addr/port bound socket.  close(2) on the accepted socket is called
  immediately.  If -r is specified, each processes will create their own
  listen socket on the same port/addr w/ SO_REUSEPORT sockopt.
- "kq_accept_server"
  Fork certain amount of processes to perform non-blocking accept(2) on the
  same addr/port bound socket w/ help of kqueue(2).  close(2) on the accepted
  socket is called after the other side closed the connection.  If -r is
  specified, each processes will create their own listen socket on the same
  port/addr w/ SO_REUSEPORT sockopt.

kq_accept_server closely mimics the real life TCP server.
Remove <sys/bitstring.h> via 'make upgrade'.
kernel: Remove global PROC_LOCK and PROC_UNLOCK definitions

Locking in this area varies so much between FreeBSD and DragonFly
that it's best to determine what to do with these macros on a
case-by-case basis
Merge branch 'master' into gsocdrm_alter