Author: glebius
Date: Fri Jan 24 21:56:10 2020
New Revision: 357094
URL: https://svnweb.freebsd.org/changeset/base/357094

Log:
  Enter the network epoch when rack_output() is called in setsockopt(2).

Modified:
  head/sys/netinet/tcp_stacks/rack.c

Modified: head/sys/netinet/tcp_stacks/rack.c
==============================================================================
--- head/sys/netinet/tcp_stacks/rack.c  Fri Jan 24 21:04:33 2020        
(r357093)
+++ head/sys/netinet/tcp_stacks/rack.c  Fri Jan 24 21:56:10 2020        
(r357094)
@@ -10093,6 +10093,7 @@ static int
 rack_set_sockopt(struct socket *so, struct sockopt *sopt,
     struct inpcb *inp, struct tcpcb *tp, struct tcp_rack *rack)
 {
+       struct epoch_tracker et;
        int32_t error = 0, optval;
 
        switch (sopt->sopt_name) {
@@ -10261,7 +10262,9 @@ rack_set_sockopt(struct socket *so, struct sockopt *so
                if (tp->t_flags & TF_DELACK) {
                        tp->t_flags &= ~TF_DELACK;
                        tp->t_flags |= TF_ACKNOW;
+                       NET_EPOCH_ENTER(et);
                        rack_output(tp);
+                       NET_EPOCH_EXIT(et);
                }
                break;
        case TCP_RACK_MIN_PACE:
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to