netdev
[Top] [All Lists]

Re: Submission #3 for S2io 10GbE driver

To: Jeff Garzik <jgarzik@xxxxxxxxx>
Subject: Re: Submission #3 for S2io 10GbE driver
From: Ben Greear <greearb@xxxxxxxxxxxxxxx>
Date: Tue, 02 Mar 2004 13:33:07 -0800
Cc: "Feldman, Scott" <scott.feldman@xxxxxxxxx>, netdev@xxxxxxxxxxx
In-reply-to: <4044FABE.9070408@xxxxxxxxx>
Organization: Candela Technologies
References: <C6F5CF431189FA4CBAEC9E7DD5441E0102CBDECB@xxxxxxxxxxxxxxxxxxxxxx> <4044FABE.9070408@xxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040113
Jeff Garzik wrote:

tg3 needs to kfree the skb too, leading to my comment "some existing drivers get this wrong too". Requeueing the skb only occurs in -some- packet schedulers, not all. So drivers cannot depend on the net stack doing what you want in all cases. Conditional correct behavior or leak.. :/

I see lots of hard-start-xmit errors for e1000 and e100 in 2.4.25,
and it's very nice to be able to retry.  Lets fix the broken callers
instead of making the drivers less useful.

You can see this yourself with pktgen.  Here is the code in pktgen
where I see the printouts...if this is my bug, please let me know!

                        spin_lock_bh(&odev->xmit_lock);
                        if (!netif_queue_stopped(odev)) {
                                if (odev->hard_start_xmit(next->skb, odev)) {
                                        if (net_ratelimit()) {
                                                printk(KERN_INFO "Hard xmit 
error\n");
                                        }

Ben


--
Ben Greear <greearb@xxxxxxxxxxxxxxx>
Candela Technologies Inc  http://www.candelatech.com


<Prev in Thread] Current Thread [Next in Thread>