summaryrefslogtreecommitdiffstats
path: root/runtime/transport/transport.c
diff options
context:
space:
mode:
authortrz <trz>2005-10-14 21:53:51 +0000
committertrz <trz>2005-10-14 21:53:51 +0000
commit08b40d88c111a077b1069babb6a51a2b68aef1a6 (patch)
treefbfb0d0149af6afd4be71240d39918732e0ac0aa /runtime/transport/transport.c
parent20b1a57d555b30478e224eec7c358ee3f7c7a6e9 (diff)
downloadsystemtap-steved-08b40d88c111a077b1069babb6a51a2b68aef1a6.tar.gz
systemtap-steved-08b40d88c111a077b1069babb6a51a2b68aef1a6.tar.xz
systemtap-steved-08b40d88c111a077b1069babb6a51a2b68aef1a6.zip
Added #ifdef'ed support for kernels containing the recent relayfs API changes
Diffstat (limited to 'runtime/transport/transport.c')
-rw-r--r--runtime/transport/transport.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/runtime/transport/transport.c b/runtime/transport/transport.c
index e8d2112d..89c90c96 100644
--- a/runtime/transport/transport.c
+++ b/runtime/transport/transport.c
@@ -75,9 +75,15 @@ int _stp_transport_write (void *data, int len)
static void _stp_handle_buf_info(int *cpuptr)
{
struct buf_info out;
+
out.cpu = *cpuptr;
+#ifdef RELAYFS_VERSION_GE_4
+ out.produced = _stp_chan->buf[*cpuptr]->subbufs_produced;
+ out.consumed = _stp_chan->buf[*cpuptr]->subbufs_consumed;
+#else
out.produced = atomic_read(&_stp_chan->buf[*cpuptr]->subbufs_produced);
out.consumed = atomic_read(&_stp_chan->buf[*cpuptr]->subbufs_consumed);
+#endif /* RELAYFS_VERSION_GE_4 */
_stp_transport_send(STP_BUF_INFO, &out, sizeof(out));
}