diff options
author | davide <davide@FreeBSD.org> | 2013-09-01 23:34:53 +0000 |
---|---|---|
committer | davide <davide@FreeBSD.org> | 2013-09-01 23:34:53 +0000 |
commit | 3e4464bbe3ad0bffe28f58f47e8994d9ac6bc860 (patch) | |
tree | 852a30b41e7209f4b3e346f7a073a8ebb5bee16c /sys/kern/uipc_sockbuf.c | |
parent | 8d06f831a7fd6d823c0aff22030a780f8b8fd05e (diff) | |
download | FreeBSD-src-3e4464bbe3ad0bffe28f58f47e8994d9ac6bc860.zip FreeBSD-src-3e4464bbe3ad0bffe28f58f47e8994d9ac6bc860.tar.gz |
Fix socket buffer timeouts precision using the new sbintime_t KPI instead
of relying on the tvtohz() workaround. The latter has been introduced
lately by jhb@ (r254699) in order to have a fix that can be backported
to STABLE.
Reported by: Vitja Makarov <vitja.makarov at gmail dot com>
Reviewed by: jhb (earlier version)
Diffstat (limited to 'sys/kern/uipc_sockbuf.c')
-rw-r--r-- | sys/kern/uipc_sockbuf.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/uipc_sockbuf.c b/sys/kern/uipc_sockbuf.c index a09dbc6..9fa8ae0 100644 --- a/sys/kern/uipc_sockbuf.c +++ b/sys/kern/uipc_sockbuf.c @@ -127,9 +127,9 @@ sbwait(struct sockbuf *sb) SOCKBUF_LOCK_ASSERT(sb); sb->sb_flags |= SB_WAIT; - return (msleep(&sb->sb_cc, &sb->sb_mtx, + return (msleep_sbt(&sb->sb_cc, &sb->sb_mtx, (sb->sb_flags & SB_NOINTR) ? PSOCK : PSOCK | PCATCH, "sbwait", - sb->sb_timeo)); + sb->sb_timeo, 0, 0)); } int |