tcpdump broke in 2.6.34-rc1

From: Jan Engelhardt
Date: Fri Mar 12 2010 - 07:39:22 EST


Greetings.


I am currently on 2.6.34-rc1 and found that tcpdump no
longer works (dies with setsockopt: invalid argument). Bisect-narrowed
it down to somewhere between

# good: [13dda80e48439b446d0bc9bab34b91484bc8f533] Merge branch 'davinci-for-lin
# bad: [b7f3a209e9b09b3110ea084836c75f2cd26b29f2] Merge git://git.kernel.org/pub

(bisecting in there gives me even a kernel panic on boot. Great fun. So
I'm leaving it at that.)
The strace output is:

socket(PF_PACKET, SOCK_RAW, 768) = 3
ioctl(3, SIOCGIFINDEX, {ifr_name="lo", ifr_index=1}) = 0
ioctl(3, SIOCGIFHWADDR, {ifr_name="eth0", ifr_hwaddr=08:00:27:6e:34:4a}) = 0
ioctl(3, SIOCGIFINDEX, {ifr_name="eth0", ifr_index=2}) = 0
bind(3, {sa_family=AF_PACKET, proto=0x03, if2, pkttype=PACKET_HOST, addr(0)={0,
}, 20) = 0
getsockopt(3, SOL_SOCKET, SO_ERROR, [17179869184], [4]) = 0
setsockopt(3, SOL_PACKET, PACKET_ADD_MEMBERSHIP,
"\2\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0", 16) = -1 EINVAL (Invalid argument)


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/