diff options
| author | 2006-01-19 16:53:02 -0800 | |
|---|---|---|
| committer | 2006-01-19 16:53:02 -0800 | |
| commit | cf9e50a920be24b734fb91f19b8844f8509cb981 (patch) | |
| tree | a077c31bcfe9844bcfa7ff1fe07364b5b7958622 /net/sctp/socket.c | |
| parent | Merge master.kernel.org:/pub/scm/linux/kernel/git/sfrench/cifs-2.6 (diff) | |
| parent | [SCTP]: Fix sctp_rcv_ootb() to handle the last chunk of a packet correctly. (diff) | |
| download | wireguard-linux-cf9e50a920be24b734fb91f19b8844f8509cb981.tar.xz wireguard-linux-cf9e50a920be24b734fb91f19b8844f8509cb981.zip | |
Merge master.kernel.org:/pub/scm/linux/kernel/git/sridhar/lksctp-2.6
Diffstat (limited to 'net/sctp/socket.c')
| -rw-r--r-- | net/sctp/socket.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c index c98ee375ba5e..fb1821d9f338 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c @@ -2995,7 +2995,7 @@ SCTP_STATIC int sctp_init_sock(struct sock *sk) sp->hbinterval = jiffies_to_msecs(sctp_hb_interval); sp->pathmaxrxt = sctp_max_retrans_path; sp->pathmtu = 0; // allow default discovery - sp->sackdelay = sctp_sack_timeout; + sp->sackdelay = jiffies_to_msecs(sctp_sack_timeout); sp->param_flags = SPP_HB_ENABLE | SPP_PMTUD_ENABLE | SPP_SACKDELAY_ENABLE; @@ -5602,8 +5602,12 @@ static void sctp_sock_migrate(struct sock *oldsk, struct sock *newsk, */ newsp->type = type; + spin_lock_bh(&oldsk->sk_lock.slock); + /* Migrate the backlog from oldsk to newsk. */ + sctp_backlog_migrate(assoc, oldsk, newsk); /* Migrate the association to the new socket. */ sctp_assoc_migrate(assoc, newsk); + spin_unlock_bh(&oldsk->sk_lock.slock); /* If the association on the newsk is already closed before accept() * is called, set RCV_SHUTDOWN flag. |
