This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Tapset porting to 2.6.38
- From: "Turgis, Frederic" <f-turgis at ti dot com>
- To: "Turgis, Frederic" <f-turgis at ti dot com>, "systemtap at sourceware dot org" <systemtap at sourceware dot org>
- Date: Mon, 14 Mar 2011 17:06:43 +0100
- Subject: Tapset porting to 2.6.38
Hi,
I recently ran the testsuite on Linaro kernel (2.6.38 on ARM dual core cortex A9) and found 1 issue coming from 2.6.38 kernel changes. I checked this is not in latest snapshot, I don't seem to find it in bug list so here it is in case nobody has already seen it:
- 2.6.38-rc1 has broken tapset/ip.stp by moving inet_daddr parameter in struct sk, commit 68835aba4d9b74e2f94106d13b6a4bddc447c4c8 impacting include/net/inet_sock.h.
This impacts "function __ip_sock_saddr:long (sock:long)"
It is doing this:
- __be32 inet_daddr;
- __be32 inet_rcv_saddr;
+#define inet_daddr sk.__sk_common.skc_daddr
+#define inet_rcv_saddr sk.__sk_common.skc_rcv_saddr
As this is not about only dereferencing pointers, I guess reading "inet_daddr" will require some "pure" code so I didn't propose solution (and it may require kread/CATCH_DEREF_FAULT stuff which I am not familiar with although it is documented)
Regards
Fred
Frederic Turgis
Texas Instruments - OMAP Platform Business Unit - OMAP System Engineering - Platform Enablement
Texas Instruments France SA, 821 Avenue Jack Kilby, 06270 Villeneuve Loubet. 036 420 040 R.C.S Antibes. Capital de EUR 753.920