[tcp-scale] Fix a race condition in TCP timewait
between tcp_tw_2msl_reuse() and tcp_tw_2msl_scan() that drives
(at least) timewait timeout cancellation.  Also simplify
implementation by holding inpcb reference and removing
tw_pcbref() and tw_pcbrele().
[tcp-scale]: A connection in TIME_WAIT state before
calling close() did not actually received any RST.
Do not set error to ECONNRESET in this case.
[tcp-scale] Introduce the INP_LIST global mutex for protecting pcbinfo
global structures.  Then use INP_INFO_RLOCK in critical paths to increase
TCP processing parallelism, and use INP_INFO_WLOCK in full INPs iteration
loops.

Julien's review:
 - Fix INP_INFO_WLOCK assertions
 - Fixing comments
 - Rebased on svn path=/head/; revision=272099
[tcp-scale]: Bind taskqueue thread to same core than receiving queue interruption:
 - Add a new tunable: hw.ixgbe.bind_taskqueue (0 by default)