1/*- 2 * Copyright (c) 1982, 1986, 1988, 1990, 1993, 1994, 1995 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 16 unchanged lines hidden (view full) --- 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * @(#)tcp_input.c 8.12 (Berkeley) 5/24/95 30 */ 31 32#include <sys/cdefs.h> |
33__FBSDID("$FreeBSD: head/sys/netinet/tcp_reass.c 215701 2010-11-22 19:32:54Z dim $"); |
34 35#include "opt_inet.h" 36#include "opt_inet6.h" 37#include "opt_tcpdebug.h" 38 39#include <sys/param.h> 40#include <sys/kernel.h> 41#include <sys/malloc.h> --- 33 unchanged lines hidden (view full) --- 75#endif /* TCPDEBUG */ 76 77static int tcp_reass_sysctl_maxseg(SYSCTL_HANDLER_ARGS); 78static int tcp_reass_sysctl_qsize(SYSCTL_HANDLER_ARGS); 79 80SYSCTL_NODE(_net_inet_tcp, OID_AUTO, reass, CTLFLAG_RW, 0, 81 "TCP Segment Reassembly Queue"); 82 |
83static VNET_DEFINE(int, tcp_reass_maxseg) = 0; |
84#define V_tcp_reass_maxseg VNET(tcp_reass_maxseg) 85SYSCTL_VNET_PROC(_net_inet_tcp_reass, OID_AUTO, maxsegments, CTLFLAG_RDTUN, 86 &VNET_NAME(tcp_reass_maxseg), 0, &tcp_reass_sysctl_maxseg, "I", 87 "Global maximum number of TCP Segments in Reassembly Queue"); 88 |
89static VNET_DEFINE(int, tcp_reass_qsize) = 0; |
90#define V_tcp_reass_qsize VNET(tcp_reass_qsize) 91SYSCTL_VNET_PROC(_net_inet_tcp_reass, OID_AUTO, cursegments, CTLFLAG_RD, 92 &VNET_NAME(tcp_reass_qsize), 0, &tcp_reass_sysctl_qsize, "I", 93 "Global number of TCP Segments currently in Reassembly Queue"); 94 |
95static VNET_DEFINE(int, tcp_reass_overflows) = 0; |
96#define V_tcp_reass_overflows VNET(tcp_reass_overflows) 97SYSCTL_VNET_INT(_net_inet_tcp_reass, OID_AUTO, overflows, CTLFLAG_RD, 98 &VNET_NAME(tcp_reass_overflows), 0, 99 "Global number of TCP Segment Reassembly Queue Overflows"); 100 |
101static VNET_DEFINE(uma_zone_t, tcp_reass_zone); |
102#define V_tcp_reass_zone VNET(tcp_reass_zone) 103 104/* Initialize TCP reassembly queue */ 105static void 106tcp_reass_zone_change(void *tag) 107{ 108 109 V_tcp_reass_maxseg = nmbclusters / 16; --- 225 unchanged lines hidden --- |