diff options
author | dg <dg@FreeBSD.org> | 2002-08-16 05:08:46 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 2002-08-16 05:08:46 +0000 |
commit | fc04ab53c9b23793ca718efc91bb4207d1a67755 (patch) | |
tree | 18698452e1a02bd0772aab8ce305ad0fbeac4446 /sys/nfsclient | |
parent | 75d84b9b55e6be9b99fdcefc1cd3a59f6811348a (diff) | |
download | FreeBSD-src-fc04ab53c9b23793ca718efc91bb4207d1a67755.zip FreeBSD-src-fc04ab53c9b23793ca718efc91bb4207d1a67755.tar.gz |
Rewrote the space check algorithm in sbreserve() so that the extremely
expensive (!) 64bit multiply, divide, and comparison aren't necessary
(this came in originally from rev 1.19 to fix an overflow with large
sb_max or MCLBYTES).
The 64bit math in this function was measured in some kernel profiles as
being as much as 5-8% of the total overhead of the TCP/IP stack and
is eliminated with this commit. There is a harmless rounding error (of
about .4% with the standard values) introduced with this change,
however this is in the conservative direction (downward toward a
slightly smaller maximum socket buffer size).
MFC after: 3 days
Diffstat (limited to 'sys/nfsclient')
0 files changed, 0 insertions, 0 deletions