diff --git a/src/add-ons/kernel/network/devices/loopback/loopback.cpp b/src/add-ons/kernel/network/devices/loopback/loopback.cpp index de3024c851..3a02c357b0 100644 --- a/src/add-ons/kernel/network/devices/loopback/loopback.cpp +++ b/src/add-ons/kernel/network/devices/loopback/loopback.cpp @@ -110,7 +110,14 @@ loopback_control(net_device *device, int32 op, void *argument, status_t loopback_send_data(net_device *device, net_buffer *buffer) { - return sStackModule->device_enqueue_buffer(device, buffer); + status_t status = sStackModule->device_enqueue_buffer(device, buffer); + if (status == B_OK) { + atomic_add64((int64*)&device->stats.send.bytes, buffer->size); + atomic_add((int32*)&device->stats.send.packets, 1); + } else { + atomic_add((int32*)&device->stats.send.errors, 1); + } + return status; }