Bug 822503 - ipv6 tapset support
ipv6 tapset support
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: systemtap (Show other bugs)
6.3
All Linux
medium Severity medium
: rc
: ---
Assigned To: Frank Ch. Eigler
Martin Cermak
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-17 10:40 EDT by Bryn M. Reeves
Modified: 2013-02-21 03:50 EST (History)
3 users (show)

See Also:
Fixed In Version: systemtap-1.8-5.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-02-21 03:50:14 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Bryn M. Reeves 2012-05-17 10:40:47 EDT
Description of problem:
The existing tapset libraries provide probes and functions for common networking subsystems including Sun RPC and NFS. The implementation in systemtap 1.7 only supports the AF_INET (ipv4) address family.

Version-Release number of selected component (if applicable):
systemtap-1.7-*.el6

How reproducible:
100%

Steps to Reproduce:
1. On a system with ipv6 enabled execute a script that will evaluate a tapset variable containing an IP address or that calls a tapset function returning an IP address
  
Actual results:
Address filled as "Unsupported Address Family"

Expected results:
Address filled with valid ipv6 address

Additional info:

I noticed this with the nfsdtop.stp example which evaluates the client_ip tapset variable in a number of probes:

probe nfsd.proc.lookup {
        nfsd_lookups <<< 1
        nfsd_lookup_clients[client_ip] <<< 1
        nfsd_lookup_clients_last_file[client_ip] = filename
}

Using the script on a host with ipv6 clients causes most operations to be attributed to "Unsupported Address Family". This comes from the rpc.stp tapset:

        if (s_addr == 0)
                return "Unsupported Address Family"
        return sprintf("%s:%d", daddr_to_string(s_addr),
                       @cast(addr, "sockaddr_in")->sin_port)

This work has been tracked upstream as PR13646 and systemtap-1.8 will include much better ipv6 support in these tapsets.
Comment 1 Bryn M. Reeves 2012-05-17 10:45:34 EDT
sourceware.org bugzilla:

http://sourceware.org/bugzilla/show_bug.cgi?id=13646

"Base IPv6 support added in commits: b88df2, d5c431, 258532, ac9732, 7447cb,
57d584, df7d21, 032226, 1ed417, 96f244, a3c777.  The tcp.stp tapset in
particular now works correctly with IPv4 and IPv6 addresses.  A testcase was
added to make sure IPv4 and IPv6 addresses are converted correctly."

There are still some problems in nfs_proc.stp (tracked in PR13793) where binary addresses are passed around:

http://sourceware.org/bugzilla/show_bug.cgi?id=13793

These are still being worked on but the changes already committed are enough to make simple scripts (like nfsdtop) work properly on ipv6-enabled hosts.
Comment 2 RHEL Product and Program Management 2012-07-10 02:50:45 EDT
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.
Comment 3 RHEL Product and Program Management 2012-07-10 21:51:45 EDT
This request was erroneously removed from consideration in Red Hat Enterprise Linux 6.4, which is currently under development.  This request will be evaluated for inclusion in Red Hat Enterprise Linux 6.4.
Comment 9 errata-xmlrpc 2013-02-21 03:50:14 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0345.html

Note You need to log in before you can comment on or make changes to this bug.