aboutsummaryrefslogtreecommitdiffstats
path: root/xenolinux-2.4.21-pre4-sparse
diff options
context:
space:
mode:
authoriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>2003-02-26 19:42:36 +0000
committeriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>2003-02-26 19:42:36 +0000
commitc876c6971a689290907a679979bedfb952c144c1 (patch)
tree3f38d22056ecdfc27aef60bb2805973ef47c7eef /xenolinux-2.4.21-pre4-sparse
parent5f8cbb69be187519af9ecee587d5152be1c00cc2 (diff)
parent937d9e4f01cf8fcd79cacc45c5ed73ab2fb9b05e (diff)
downloadxen-c876c6971a689290907a679979bedfb952c144c1.tar.gz
xen-c876c6971a689290907a679979bedfb952c144c1.tar.bz2
xen-c876c6971a689290907a679979bedfb952c144c1.zip
bitkeeper revision 1.105.1.1 (3e5d18acj3lG5wIZ1UUR4QS6hedO0Q)
Merge labyrinth.cl.cam.ac.uk:/usr/groups/xeno/BK/xeno.bk into labyrinth.cl.cam.ac.uk:/anfs/scratch/labyrinth/iap10/xeno-clone/xeno.bk
Diffstat (limited to 'xenolinux-2.4.21-pre4-sparse')
-rw-r--r--xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/network/network.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/network/network.c b/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/network/network.c
index c9acaf43ee..70e50660d8 100644
--- a/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/network/network.c
+++ b/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/network/network.c
@@ -66,6 +66,17 @@ struct net_private
};
+static void dbg_network_int(int irq, void *dev_id, struct pt_regs *ptregs)
+{
+ struct net_device *dev = (struct net_device *)dev_id;
+ struct net_private *np = dev->priv;
+ printk(KERN_ALERT "tx_full = %d, tx_entries = %d, tx_idx = %d, tx_cons = %d, tx_prod = %d, tx_event = %d, state=%d\n",
+ np->tx_full, np->tx_entries, np->tx_idx,
+ np->net_ring->tx_cons,np->net_ring->tx_prod,np->net_ring->tx_event,
+ test_bit(__LINK_STATE_XOFF, &dev->state));
+}
+
+
static int network_open(struct net_device *dev)
{
struct net_private *np = dev->priv;
@@ -123,6 +134,11 @@ static int network_open(struct net_device *dev)
goto fail;
}
+#if 1
+ request_irq( _EVENT_DEBUG, dbg_network_int, SA_SHARED, "debug", dev);
+#endif
+
+
printk("XenoLinux Virtual Network Driver installed as %s\n", dev->name);
netif_start_queue(dev);
@@ -268,7 +284,7 @@ static int network_start_xmit(struct sk_buff *skb, struct net_device *dev)
else
{
/* Avoid unnecessary tx interrupts. */
- np->net_ring->tx_event = TX_RING_INC(np->net_ring->tx_prod);
+ np->net_ring->tx_event = np->net_ring->tx_prod;
}
spin_unlock_irq(&np->tx_lock);