select() on network device loses packets at low data rates

Bug #1700746 reported by Jim Hague
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Triaged
Medium
Unassigned
Trusty
Triaged
Medium
Unassigned

Bug Description

Using the Trusty GA kernel, we found that when capturing network packets
with libpcap using a loop

    pcap_dispatch(handle, -1, dispatcher, NULL);
    select(fd + 1, & fd_selected, 0, 0, &timeval);

where timeval = 2s, packets are missed if they arrive at low rates.

I have a small test capture program (attached) which shows pings
not being captured on an otherwise idle network connection.

The problem does not occur on later (e.g. LTS Enablement Xenial) kernels.

We believe the following fixes the cause:

https://github.com/torvalds/linux/commit/da413eec729dae5dcb150e2eb34c5e7e5e4e1b49

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: linux-image-generic 3.13.0.121.131
ProcVersionSignature: Ubuntu 3.13.0-121.170-generic 3.13.11-ckt39
Uname: Linux 3.13.0-121-generic x86_64
ApportVersion: 2.14.1-0ubuntu3.23
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: jim 2070 F.... pulseaudio
CurrentDesktop: Unity
Date: Tue Jun 27 11:32:11 2017
HibernationDevice: RESUME=UUID=532db246-2b7f-45e1-a3f1-18720bbb7349
InstallationDate: Installed on 2016-11-03 (235 days ago)
InstallationMedia: Ubuntu 14.04.5 LTS "Trusty Tahr" - Release amd64 (20160803)
IwConfig:
 eth0 no wireless extensions.

 lo no wireless extensions.
Lsusb:
 Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
 Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: innotek GmbH VirtualBox
ProcFB: 0 VESA VGA
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.13.0-121-generic root=UUID=392afc20-cb81-4990-94f1-026ef649561f ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.13.0-121-generic N/A
 linux-backports-modules-3.13.0-121-generic N/A
 linux-firmware 1.127.23
RfKill:

SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 12/01/2006
dmi.bios.vendor: innotek GmbH
dmi.bios.version: VirtualBox
dmi.board.name: VirtualBox
dmi.board.vendor: Oracle Corporation
dmi.board.version: 1.2
dmi.chassis.type: 1
dmi.chassis.vendor: Oracle Corporation
dmi.modalias: dmi:bvninnotekGmbH:bvrVirtualBox:bd12/01/2006:svninnotekGmbH:pnVirtualBox:pvr1.2:rvnOracleCorporation:rnVirtualBox:rvr1.2:cvnOracleCorporation:ct1:cvr:
dmi.product.name: VirtualBox
dmi.product.version: 1.2
dmi.sys.vendor: innotek GmbH

Revision history for this message
Jim Hague (banburybill) wrote :
Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Triaged
Changed in linux (Ubuntu Trusty):
status: New → Triaged
importance: Undecided → Medium
tags: added: kernel-da-key
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.