Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys/altq
Module Name: src
Committed By: ozaki-r
Date: Mon Jul 1 02:18:44 UTC 2024
Modified Files:
src/sys/altq: altq_rmclass.c
Log Message:
altq, cbq: take care of borrowed classes on sleeping
rmc_under_limit() determines if we can send a packet by checking
that a target class (or borrowing classes) is ready to send a
packet. cl->undertime_ indicates a time that the class can send
packets after the time. So if cl->undertime_ has passed
(i.e., now >= cl->undertime_), we can send packets through the class.
The treatment is important when a required delay period is shorten
than the minimum delay on the system (a tick), because in that case
the delay handler is too late to wake up to send a packet in time.
If there are traffic, rmc_under_limit() can save such a case.
Unfortunately, the old code didn't take care of bandwidth borrowing
on sleeping. So bandwidth borrowing didn't work well with high
bandwidths that require short delay actions.
To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 src/sys/altq/altq_rmclass.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index