HomeFreeBSD

convert inpcbinfo hash and info rwlocks to epoch + mutex

Description

convert inpcbinfo hash and info rwlocks to epoch + mutex

  • Convert inpcbinfo info & hash locks to epoch for read and mutex for write
  • Garbage collect code that handled INP_INFO_TRY_RLOCK failures as INP_INFO_RLOCK which can no longer fail

When running 64 netperfs sending minimal sized packets on a 2x8x2 reduces
unhalted core cycles samples in rwlock rlock/runlock in udp_send from 51% to
3%.

Overall packet throughput rate limited by CPU affinity and NIC driver design
choices.

On the receiver unhalted core cycles samples in in_pcblookup_hash went from
13% to to 1.6%

Tested by LLNW and pho@

Reviewed by: jtl
Sponsored by: Limelight Networks
Differential Revision: https://reviews.freebsd.org/D15686

Details

Provenance
mmacyAuthored on
Reviewer
jtl
Differential Revision
D15686: convert inpcbhash rlock to epoch
Parents
rS335355: Fix amq -i timestamp segmentation violation.
Branches
Unknown
Tags
Unknown