netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Allow pktgen to work with loopback devices.
@ 2007-03-07 12:29 Josh Triplett
  2007-03-09 16:49 ` Jeff Garzik
  0 siblings, 1 reply; 2+ messages in thread
From: Josh Triplett @ 2007-03-07 12:29 UTC (permalink / raw)
  To: linux-kernel, netdev, Jeff Garzik, Andrew Morton

pktgen currently only works on network devices with type ARPHRD_ETHER.  Add
support for the loopback device, type ARPHRD_LOOPBACK.

I've tested this on my system, using a modified pktgen.conf-1-1 with
s/eth1/lo/g, and it works fine; the network device statistics confirm packet
transmission and receipt.

Thanks to Sarah Bailey for discovering and tracking down the problem.

Signed-off-by: Josh Triplett <josh@freedesktop.org>
---

I intentionally didn't change the error message "not an ethernet device".  For
the purposes of pktgen, loopback devices act like ethernet devices.

 net/core/pktgen.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index 74a9a32..6fc6f9d 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -1930,7 +1930,7 @@ static struct net_device *pktgen_setup_dev(struct pktgen_dev *pkt_dev)
 		printk("pktgen: no such netdevice: \"%s\"\n", pkt_dev->ifname);
 		goto out;
 	}
-	if (odev->type != ARPHRD_ETHER) {
+	if (odev->type != ARPHRD_LOOPBACK && odev->type != ARPHRD_ETHER) {
 		printk("pktgen: not an ethernet device: \"%s\"\n",
 		       pkt_dev->ifname);
 		goto out_put;
-- 
1.5.0.2

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-03-09 16:49 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-07 12:29 [PATCH] Allow pktgen to work with loopback devices Josh Triplett
2007-03-09 16:49 ` Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).