DragonFly commits List (threaded) for 2008-12
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
DragonFly-2.1.1.62.ga48c5 master sys/netinet tcp_input.c tcp_output.c tcp_subr.c tcp_syncache.c tcp_timer.c tcp_timer.h tcp_timer2.h tcp_usrreq.c tcp_var.h
commit a48c5dd5268dc3f67165670e4e4e550f6fa6816a
Author: Sepherosa Ziehau <sephe@dragonflybsd.org>
Date: Mon Dec 15 22:29:35 2008 +0800
Restore the semantic of callout_active() testing on tcp timers.
Originally there is no time gap between the running of the tcp timer
handler and the deactivation of the tcp timer callout, but the message
based tcp timer has a time gap in between these two actions. This
time gap affects the code path which depends on the current state of
the tcp timer, i.e. return value of callout_active(tcp_timer). To
close this time gap, we take the pending and running tcp timer tasks
into consideration when testing the current state of the tcp timer.
Reviewed-by: dillon@
Summary of changes:
sys/netinet/tcp_input.c | 133 +++++++++++++++-------------
sys/netinet/tcp_output.c | 42 +++++----
sys/netinet/tcp_subr.c | 29 ++++---
sys/netinet/tcp_syncache.c | 3 +-
sys/netinet/tcp_timer.c | 90 ++++++++++++++------
sys/netinet/tcp_timer.h | 22 +++--
sys/netinet/{tcp_debug.h => tcp_timer2.h} | 113 +++++++++++++------------
sys/netinet/tcp_usrreq.c | 12 ++-
sys/netinet/tcp_var.h | 10 +-
9 files changed, 263 insertions(+), 191 deletions(-)
copy sys/netinet/{tcp_debug.h => tcp_timer2.h} (55%)
http://gitweb.dragonflybsd.org/?p=dragonfly.git;a=commitdiff;h=a48c5dd5268dc3f67165670e4e4e550f6fa6816a
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]