Yesterday I upgraded my DEC Multia to RedHat 6.0 + current patches (kernel
2.2.5-22)
Now I see data corruption with pings, and at the same time syslog entries
about unaligned traps (but otherwise the machine does appear to be working
normally - e.g. I can log into it with ssh). Examples attached below.
Even more strangely, if I try to strace the ping, it dumps core.
Is this a well-known problem? Would upgrading to a later kernel version fix
it? Or is this a bug in 'ping' in netkit-base-0.10-29 ?
Please can you cc: me on any reply, as I'm not a member of this list.
Thanks,
Brian Candler.
--- 8< ------------------------------------------------------------------
# ping 10.0.1.3
PING 10.0.1.3 (10.0.1.3): 56 data bytes
64 bytes from 10.0.1.3: icmp_seq=0 ttl=64 time=4.3 ms
wrong data byte #8 should be 0x8 but was 0x4e
c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26
27 28 29 2a 2b
2c 2d 2e 2f 0 0 0 0 0 0 0 0 0 0 0 0
64 bytes from 10.0.1.3: icmp_seq=1 ttl=64 time=1.9 ms
wrong data byte #8 should be 0x8 but was 0x0
c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26
27 28 29 2a 2b
2c 2d 2e 2f 0 0 0 0 0 0 0 0 0 0 0 0
--- 10.0.1.3 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 1.9/3.1/4.3 ms
# tail -4 /var/log/messages
Jul 7 16:01:03 frogmella kernel: ping(2803): unaligned trap at 0000000120002b04:
0000000120117324 29 1
Jul 7 16:01:03 frogmella kernel: ping(2803): unaligned trap at 0000000120002b2c:
000000012011731c 29 2
Jul 7 16:01:04 frogmella kernel: ping(2803): unaligned trap at 0000000120002b04:
0000000120117324 29 1
Jul 7 16:01:04 frogmella kernel: ping(2803): unaligned trap at 0000000120002b2c:
000000012011731c 29 2
<< These addresses do not appear in /boot/System.map, which runs from
fffffc0000300000 to fffffc000057cf90 >>
# strace ping 10.0.1.3
<< snip some stuff >>
mmap(0, 4831834512, PROT_WRITE|0x1000, 0xc /* MAP_???
*/|MAP_FIXED|MAP_NORESERVE|MAP_GROWSDOWN|MAP_DENYWRITE|MAP_EXECUTABLE|0x1ffe8ac0, 4,
0) = 0x2000001c000
ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
write(1, "PING 10.0.1.3 (10.0.1.3): 56 dat"..., 40PING 10.0.1.3 (10.0.1.3): 56 data
bytes
) = 40
Segmentation fault (core dumped)
# gdb -c core
<< snip copyright >>
This GDB was configured as "alpha-redhat-linux".
Core was generated by `strace ping 10.0.1.3'.
Program terminated with signal 11, Segmentation fault.
warning: Hit heuristic-fence-post without finding
warning: enclosing function for address 0x120006e18
This warning occurs if you are debugging a function without any symbols
(for example, in a stripped executable). In that case, you may wish to
increase the size of the search with the `set heuristic-fence-post' command.
Otherwise, you told GDB there was a function where there isn't one, or
(more likely) you have encountered a bug in GDB.
#0 0x120006e18 in ?? ()
(gdb)