usertap kernel read faults - can I ignore them somehow?

Matthew Ward matthew.ward@fubra.com
Tue Nov 29 14:30:00 GMT 2011


I'm having an issue with our usertap tapset 
(https://github.com/fubralimited/usertap) on a high-load server where 
trying to find an IP address for a particular socket is causing 
systemtap to crash out on a kernel read fault. This tapset always builds 
and runs on a low-traffic server, but after testing on one of our 
high-traffic nodes it sometimes builds and runs without a problem, and 
sometimes refuses to build at all.

There's a gist of the error we're getting here: 
https://gist.github.com/1404868. The relevant line we're getting is:

ERROR: kernel read fault at 0x0000000100000264 (addr) near identifier 
'@cast' at /usr/share/systemtap/tapset/ip.stp:45:11

I presume that that file is called/included by the usertap tapset as 
it's asking for the IP address associated with a socket, but this seems 
to be causing an error in certain situations (presumably where it's 
requesting an IP address for something that doesn't have one). Is there 
any way I can tell our systemtap script to silence or ignore the call 
for the IP address if that lookup fails, so that it will start anyway 
like it does normally?

System info:
systemtap-runtime-1.4-6.el6_1.2.x86_64
kernel-2.6.32-131.17.1.el6.x86_64

Source code for usertap:
https://github.com/fubralimited/usertap/blob/master/src/usertap.stp

---
Matthew Ward
e: matthew.ward@fubra.com



More information about the Systemtap mailing list