From f8e6042eef05612c93efee7adb00cb006fbcc643 Mon Sep 17 00:00:00 2001 From: guanglei Date: Thu, 18 May 2006 00:21:05 +0000 Subject: I break LKET into layered structure. The first layer is those generic tapsets. The second layer is tracing specific. I checked into CVS those generic tapsets at the first step. --- tapset/networking.stp | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tapset/networking.stp (limited to 'tapset/networking.stp') diff --git a/tapset/networking.stp b/tapset/networking.stp new file mode 100644 index 00000000..f32953fd --- /dev/null +++ b/tapset/networking.stp @@ -0,0 +1,31 @@ +// networking tapset +// Copyright (C) 2005, 2006 IBM Corp. +// +// This file is part of systemtap, and is free software. You can +// redistribute it and/or modify it under the terms of the GNU General +// Public License (GPL); either version 2, or (at your option) any +// later version. + +%{ +#include +%} + +/* Main device receive routine, be called when packet arrives on network device */ +probe netdev.receive + = kernel.function("netif_receive_skb") +{ + dev_name = kernel_string($skb->dev->name) + length = $skb->len + protocol = $skb->protocol + truesize = $skb->truesize +} + +/* Queue a buffer for transmission to a network device */ +probe netdev.transmit + = kernel.function("dev_queue_xmit") +{ + dev_name = kernel_string($skb->dev->name) + length = $skb->len + protocol = $skb->protocol + truesize = $skb->truesize +} -- cgit