Kernel/net: Add tracking of dropped packets per adapter

This commit is contained in:
Isaac 2024-05-08 09:40:54 -04:00 committed by Andreas Kling
parent f164e18a55
commit 3d2fcf4244
Notes: sideshowbarker 2024-07-17 03:03:37 +09:00
3 changed files with 4 additions and 1 deletions

View file

@ -44,6 +44,7 @@ ErrorOr<void> SysFSNetworkAdaptersStats::try_generate(KBufferBuilder& builder)
TRY(obj.add("link_speed"sv, adapter.link_speed()));
TRY(obj.add("link_full_duplex"sv, adapter.link_full_duplex()));
TRY(obj.add("mtu"sv, adapter.mtu()));
TRY(obj.add("packets_dropped"sv, adapter.packets_dropped()));
TRY(obj.finish());
return {};
}));

View file

@ -76,7 +76,7 @@ void NetworkAdapter::did_receive(ReadonlyBytes payload)
m_bytes_in += payload.size();
if (m_packet_queue_size == max_packet_buffers) {
// FIXME: Keep track of the number of dropped packets
m_packets_dropped++;
return;
}

View file

@ -90,6 +90,7 @@ public:
u32 bytes_in() const { return m_bytes_in; }
u32 packets_out() const { return m_packets_out; }
u32 bytes_out() const { return m_bytes_out; }
u32 packets_dropped() const { return m_packets_dropped; }
RefPtr<PacketWithTimestamp> acquire_packet_buffer(size_t);
void release_packet_buffer(PacketWithTimestamp&);
@ -126,6 +127,7 @@ private:
u32 m_packets_out { 0 };
u32 m_bytes_out { 0 };
u32 m_mtu { 1500 };
u32 m_packets_dropped { 0 };
};
}