diff options
Diffstat (limited to 'pkg/tcpip/transport')
-rw-r--r-- | pkg/tcpip/transport/icmp/endpoint.go | 5 | ||||
-rw-r--r-- | pkg/tcpip/transport/icmp/icmp_state_autogen.go | 31 | ||||
-rw-r--r-- | pkg/tcpip/transport/packet/endpoint.go | 2 | ||||
-rw-r--r-- | pkg/tcpip/transport/packet/packet_state_autogen.go | 35 | ||||
-rw-r--r-- | pkg/tcpip/transport/raw/endpoint.go | 2 | ||||
-rw-r--r-- | pkg/tcpip/transport/raw/raw_state_autogen.go | 23 | ||||
-rw-r--r-- | pkg/tcpip/transport/udp/endpoint.go | 5 | ||||
-rw-r--r-- | pkg/tcpip/transport/udp/udp_state_autogen.go | 59 |
8 files changed, 86 insertions, 76 deletions
diff --git a/pkg/tcpip/transport/icmp/endpoint.go b/pkg/tcpip/transport/icmp/endpoint.go index b3436e44c..bb0db9f70 100644 --- a/pkg/tcpip/transport/icmp/endpoint.go +++ b/pkg/tcpip/transport/icmp/endpoint.go @@ -54,9 +54,8 @@ type endpoint struct { waiterQueue *waiter.Queue uniqueID uint64 net network.Endpoint - // TODO(b/142022063): Add ability to save and restore per endpoint stats. - stats tcpip.TransportEndpointStats `state:"nosave"` - ops tcpip.SocketOptions + stats tcpip.TransportEndpointStats + ops tcpip.SocketOptions // The following fields are used to manage the receive queue, and are // protected by rcvMu. diff --git a/pkg/tcpip/transport/icmp/icmp_state_autogen.go b/pkg/tcpip/transport/icmp/icmp_state_autogen.go index 84a0d4f3a..5ba2d9925 100644 --- a/pkg/tcpip/transport/icmp/icmp_state_autogen.go +++ b/pkg/tcpip/transport/icmp/icmp_state_autogen.go @@ -56,6 +56,7 @@ func (e *endpoint) StateFields() []string { "waiterQueue", "uniqueID", "net", + "stats", "ops", "rcvReady", "rcvList", @@ -74,13 +75,14 @@ func (e *endpoint) StateSave(stateSinkObject state.Sink) { stateSinkObject.Save(2, &e.waiterQueue) stateSinkObject.Save(3, &e.uniqueID) stateSinkObject.Save(4, &e.net) - stateSinkObject.Save(5, &e.ops) - stateSinkObject.Save(6, &e.rcvReady) - stateSinkObject.Save(7, &e.rcvList) - stateSinkObject.Save(8, &e.rcvBufSize) - stateSinkObject.Save(9, &e.rcvClosed) - stateSinkObject.Save(10, &e.frozen) - stateSinkObject.Save(11, &e.ident) + stateSinkObject.Save(5, &e.stats) + stateSinkObject.Save(6, &e.ops) + stateSinkObject.Save(7, &e.rcvReady) + stateSinkObject.Save(8, &e.rcvList) + stateSinkObject.Save(9, &e.rcvBufSize) + stateSinkObject.Save(10, &e.rcvClosed) + stateSinkObject.Save(11, &e.frozen) + stateSinkObject.Save(12, &e.ident) } // +checklocksignore @@ -90,13 +92,14 @@ func (e *endpoint) StateLoad(stateSourceObject state.Source) { stateSourceObject.Load(2, &e.waiterQueue) stateSourceObject.Load(3, &e.uniqueID) stateSourceObject.Load(4, &e.net) - stateSourceObject.Load(5, &e.ops) - stateSourceObject.Load(6, &e.rcvReady) - stateSourceObject.Load(7, &e.rcvList) - stateSourceObject.Load(8, &e.rcvBufSize) - stateSourceObject.Load(9, &e.rcvClosed) - stateSourceObject.Load(10, &e.frozen) - stateSourceObject.Load(11, &e.ident) + stateSourceObject.Load(5, &e.stats) + stateSourceObject.Load(6, &e.ops) + stateSourceObject.Load(7, &e.rcvReady) + stateSourceObject.Load(8, &e.rcvList) + stateSourceObject.Load(9, &e.rcvBufSize) + stateSourceObject.Load(10, &e.rcvClosed) + stateSourceObject.Load(11, &e.frozen) + stateSourceObject.Load(12, &e.ident) stateSourceObject.AfterLoad(e.afterLoad) } diff --git a/pkg/tcpip/transport/packet/endpoint.go b/pkg/tcpip/transport/packet/endpoint.go index e4a64e191..689427d53 100644 --- a/pkg/tcpip/transport/packet/endpoint.go +++ b/pkg/tcpip/transport/packet/endpoint.go @@ -67,7 +67,7 @@ type endpoint struct { waiterQueue *waiter.Queue cooked bool ops tcpip.SocketOptions - stats tcpip.TransportEndpointStats `state:"nosave"` + stats tcpip.TransportEndpointStats // The following fields are used to manage the receive queue. rcvMu sync.Mutex `state:"nosave"` diff --git a/pkg/tcpip/transport/packet/packet_state_autogen.go b/pkg/tcpip/transport/packet/packet_state_autogen.go index 9c6623ffd..b1e685bb4 100644 --- a/pkg/tcpip/transport/packet/packet_state_autogen.go +++ b/pkg/tcpip/transport/packet/packet_state_autogen.go @@ -58,6 +58,7 @@ func (ep *endpoint) StateFields() []string { "waiterQueue", "cooked", "ops", + "stats", "rcvList", "rcvBufSize", "rcvClosed", @@ -76,14 +77,15 @@ func (ep *endpoint) StateSave(stateSinkObject state.Sink) { stateSinkObject.Save(1, &ep.waiterQueue) stateSinkObject.Save(2, &ep.cooked) stateSinkObject.Save(3, &ep.ops) - stateSinkObject.Save(4, &ep.rcvList) - stateSinkObject.Save(5, &ep.rcvBufSize) - stateSinkObject.Save(6, &ep.rcvClosed) - stateSinkObject.Save(7, &ep.rcvDisabled) - stateSinkObject.Save(8, &ep.closed) - stateSinkObject.Save(9, &ep.boundNetProto) - stateSinkObject.Save(10, &ep.boundNIC) - stateSinkObject.Save(11, &ep.lastError) + stateSinkObject.Save(4, &ep.stats) + stateSinkObject.Save(5, &ep.rcvList) + stateSinkObject.Save(6, &ep.rcvBufSize) + stateSinkObject.Save(7, &ep.rcvClosed) + stateSinkObject.Save(8, &ep.rcvDisabled) + stateSinkObject.Save(9, &ep.closed) + stateSinkObject.Save(10, &ep.boundNetProto) + stateSinkObject.Save(11, &ep.boundNIC) + stateSinkObject.Save(12, &ep.lastError) } // +checklocksignore @@ -92,14 +94,15 @@ func (ep *endpoint) StateLoad(stateSourceObject state.Source) { stateSourceObject.Load(1, &ep.waiterQueue) stateSourceObject.Load(2, &ep.cooked) stateSourceObject.Load(3, &ep.ops) - stateSourceObject.Load(4, &ep.rcvList) - stateSourceObject.Load(5, &ep.rcvBufSize) - stateSourceObject.Load(6, &ep.rcvClosed) - stateSourceObject.Load(7, &ep.rcvDisabled) - stateSourceObject.Load(8, &ep.closed) - stateSourceObject.Load(9, &ep.boundNetProto) - stateSourceObject.Load(10, &ep.boundNIC) - stateSourceObject.Load(11, &ep.lastError) + stateSourceObject.Load(4, &ep.stats) + stateSourceObject.Load(5, &ep.rcvList) + stateSourceObject.Load(6, &ep.rcvBufSize) + stateSourceObject.Load(7, &ep.rcvClosed) + stateSourceObject.Load(8, &ep.rcvDisabled) + stateSourceObject.Load(9, &ep.closed) + stateSourceObject.Load(10, &ep.boundNetProto) + stateSourceObject.Load(11, &ep.boundNIC) + stateSourceObject.Load(12, &ep.lastError) stateSourceObject.AfterLoad(ep.afterLoad) } diff --git a/pkg/tcpip/transport/raw/endpoint.go b/pkg/tcpip/transport/raw/endpoint.go index 3040a445b..bfef75da7 100644 --- a/pkg/tcpip/transport/raw/endpoint.go +++ b/pkg/tcpip/transport/raw/endpoint.go @@ -70,7 +70,7 @@ type endpoint struct { associated bool net network.Endpoint - stats tcpip.TransportEndpointStats `state:"nosave"` + stats tcpip.TransportEndpointStats ops tcpip.SocketOptions // The following fields are used to manage the receive queue and are diff --git a/pkg/tcpip/transport/raw/raw_state_autogen.go b/pkg/tcpip/transport/raw/raw_state_autogen.go index 0de2d2264..0775faa58 100644 --- a/pkg/tcpip/transport/raw/raw_state_autogen.go +++ b/pkg/tcpip/transport/raw/raw_state_autogen.go @@ -56,6 +56,7 @@ func (e *endpoint) StateFields() []string { "waiterQueue", "associated", "net", + "stats", "ops", "rcvList", "rcvBufSize", @@ -72,11 +73,12 @@ func (e *endpoint) StateSave(stateSinkObject state.Sink) { stateSinkObject.Save(2, &e.waiterQueue) stateSinkObject.Save(3, &e.associated) stateSinkObject.Save(4, &e.net) - stateSinkObject.Save(5, &e.ops) - stateSinkObject.Save(6, &e.rcvList) - stateSinkObject.Save(7, &e.rcvBufSize) - stateSinkObject.Save(8, &e.rcvClosed) - stateSinkObject.Save(9, &e.frozen) + stateSinkObject.Save(5, &e.stats) + stateSinkObject.Save(6, &e.ops) + stateSinkObject.Save(7, &e.rcvList) + stateSinkObject.Save(8, &e.rcvBufSize) + stateSinkObject.Save(9, &e.rcvClosed) + stateSinkObject.Save(10, &e.frozen) } // +checklocksignore @@ -86,11 +88,12 @@ func (e *endpoint) StateLoad(stateSourceObject state.Source) { stateSourceObject.Load(2, &e.waiterQueue) stateSourceObject.Load(3, &e.associated) stateSourceObject.Load(4, &e.net) - stateSourceObject.Load(5, &e.ops) - stateSourceObject.Load(6, &e.rcvList) - stateSourceObject.Load(7, &e.rcvBufSize) - stateSourceObject.Load(8, &e.rcvClosed) - stateSourceObject.Load(9, &e.frozen) + stateSourceObject.Load(5, &e.stats) + stateSourceObject.Load(6, &e.ops) + stateSourceObject.Load(7, &e.rcvList) + stateSourceObject.Load(8, &e.rcvBufSize) + stateSourceObject.Load(9, &e.rcvClosed) + stateSourceObject.Load(10, &e.frozen) stateSourceObject.AfterLoad(e.afterLoad) } diff --git a/pkg/tcpip/transport/udp/endpoint.go b/pkg/tcpip/transport/udp/endpoint.go index b355fa7eb..049957b81 100644 --- a/pkg/tcpip/transport/udp/endpoint.go +++ b/pkg/tcpip/transport/udp/endpoint.go @@ -60,9 +60,8 @@ type endpoint struct { waiterQueue *waiter.Queue uniqueID uint64 net network.Endpoint - // TODO(b/142022063): Add ability to save and restore per endpoint stats. - stats tcpip.TransportEndpointStats `state:"nosave"` - ops tcpip.SocketOptions + stats tcpip.TransportEndpointStats + ops tcpip.SocketOptions // The following fields are used to manage the receive queue, and are // protected by rcvMu. diff --git a/pkg/tcpip/transport/udp/udp_state_autogen.go b/pkg/tcpip/transport/udp/udp_state_autogen.go index e25607e3f..3a661e327 100644 --- a/pkg/tcpip/transport/udp/udp_state_autogen.go +++ b/pkg/tcpip/transport/udp/udp_state_autogen.go @@ -67,6 +67,7 @@ func (e *endpoint) StateFields() []string { "waiterQueue", "uniqueID", "net", + "stats", "ops", "rcvReady", "rcvList", @@ -91,20 +92,21 @@ func (e *endpoint) StateSave(stateSinkObject state.Sink) { stateSinkObject.Save(1, &e.waiterQueue) stateSinkObject.Save(2, &e.uniqueID) stateSinkObject.Save(3, &e.net) - stateSinkObject.Save(4, &e.ops) - stateSinkObject.Save(5, &e.rcvReady) - stateSinkObject.Save(6, &e.rcvList) - stateSinkObject.Save(7, &e.rcvBufSize) - stateSinkObject.Save(8, &e.rcvClosed) - stateSinkObject.Save(9, &e.lastError) - stateSinkObject.Save(10, &e.portFlags) - stateSinkObject.Save(11, &e.boundBindToDevice) - stateSinkObject.Save(12, &e.boundPortFlags) - stateSinkObject.Save(13, &e.readShutdown) - stateSinkObject.Save(14, &e.effectiveNetProtos) - stateSinkObject.Save(15, &e.frozen) - stateSinkObject.Save(16, &e.localPort) - stateSinkObject.Save(17, &e.remotePort) + stateSinkObject.Save(4, &e.stats) + stateSinkObject.Save(5, &e.ops) + stateSinkObject.Save(6, &e.rcvReady) + stateSinkObject.Save(7, &e.rcvList) + stateSinkObject.Save(8, &e.rcvBufSize) + stateSinkObject.Save(9, &e.rcvClosed) + stateSinkObject.Save(10, &e.lastError) + stateSinkObject.Save(11, &e.portFlags) + stateSinkObject.Save(12, &e.boundBindToDevice) + stateSinkObject.Save(13, &e.boundPortFlags) + stateSinkObject.Save(14, &e.readShutdown) + stateSinkObject.Save(15, &e.effectiveNetProtos) + stateSinkObject.Save(16, &e.frozen) + stateSinkObject.Save(17, &e.localPort) + stateSinkObject.Save(18, &e.remotePort) } // +checklocksignore @@ -113,20 +115,21 @@ func (e *endpoint) StateLoad(stateSourceObject state.Source) { stateSourceObject.Load(1, &e.waiterQueue) stateSourceObject.Load(2, &e.uniqueID) stateSourceObject.Load(3, &e.net) - stateSourceObject.Load(4, &e.ops) - stateSourceObject.Load(5, &e.rcvReady) - stateSourceObject.Load(6, &e.rcvList) - stateSourceObject.Load(7, &e.rcvBufSize) - stateSourceObject.Load(8, &e.rcvClosed) - stateSourceObject.Load(9, &e.lastError) - stateSourceObject.Load(10, &e.portFlags) - stateSourceObject.Load(11, &e.boundBindToDevice) - stateSourceObject.Load(12, &e.boundPortFlags) - stateSourceObject.Load(13, &e.readShutdown) - stateSourceObject.Load(14, &e.effectiveNetProtos) - stateSourceObject.Load(15, &e.frozen) - stateSourceObject.Load(16, &e.localPort) - stateSourceObject.Load(17, &e.remotePort) + stateSourceObject.Load(4, &e.stats) + stateSourceObject.Load(5, &e.ops) + stateSourceObject.Load(6, &e.rcvReady) + stateSourceObject.Load(7, &e.rcvList) + stateSourceObject.Load(8, &e.rcvBufSize) + stateSourceObject.Load(9, &e.rcvClosed) + stateSourceObject.Load(10, &e.lastError) + stateSourceObject.Load(11, &e.portFlags) + stateSourceObject.Load(12, &e.boundBindToDevice) + stateSourceObject.Load(13, &e.boundPortFlags) + stateSourceObject.Load(14, &e.readShutdown) + stateSourceObject.Load(15, &e.effectiveNetProtos) + stateSourceObject.Load(16, &e.frozen) + stateSourceObject.Load(17, &e.localPort) + stateSourceObject.Load(18, &e.remotePort) stateSourceObject.AfterLoad(e.afterLoad) } |