All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
To: Li Yang <leoli@freescale.com>
Cc: linuxppc-dev@ozlabs.org, pku.leo@gmail.com, netdev@vger.kernel.org
Subject: Re: [PATCH] ucc_geth: Rework the TX logic.
Date: Fri, 27 Mar 2009 12:39:55 +0100	[thread overview]
Message-ID: <OFB3E8CC54.5F056769-ONC1257586.003FF190-C1257586.00401420@transmode.se> (raw)
In-Reply-To: <2a27d3730903270339l44ccb55fo9079402104afc458@mail.gmail.com>

pku.leo@gmail.com wrote on 27/03/2009 11:39:07:
> On Fri, Mar 27, 2009 at 6:23 PM, Joakim Tjernlund
> >> > -               /* We freed a buffer, so now we can restart
> > transmission */
> >> > -               if (netif_queue_stopped(dev))
> >> > -                       netif_wake_queue(dev);
> >> > +               dev_kfree_skb(ugeth->tx_skbuff[txQ][tx_ind]);
> >> > +               ugeth->tx_skbuff[txQ][tx_ind] = NULL;
> >> > +               out_be32(bd2buf(bd), 0); /* Mark it free */
> >>
> >> Now I see why you depend on the buffer to judge if the BD ring is
> >> full.  If you want to do this, make sure it's well documented in 
code,
> >> or others will be confused.  And as Anton already commented, in/out
> >> access is slow.  I think the original way can be fixed if you think
> >> it's broken, and will have better performance.
> >
> > The code could use a better comment, but I really think this method
> > is superior and more robust. The problem is that in/out functions is
> > much slower than it has to be for QE IO memory.
> >
> > The original way is broken and I tired to fix it but it always broke
> > as soon one applied some load.
> 
> The only difference I see between your method and the original code is
> that you update the cleanup progress on every BD.  The original code
> updates progress only after all sent BDs are processed.  You can try
> move ugeth->confBd[txQ] = bd; into the loop then it will be the same
> as your proposed code.

Already tried that+lots of other combinatios. Doesn't work

  reply	other threads:[~2009-03-27 11:39 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-26 17:44 [PATCH] ucc_geth: Rework the TX logic Joakim Tjernlund
2009-03-26 18:03 ` Anton Vorontsov
2009-03-26 18:26   ` Joakim Tjernlund
2009-03-27  9:45 ` Li Yang
2009-03-27  9:45   ` Li Yang
2009-03-27 10:23   ` Joakim Tjernlund
2009-03-27 10:23     ` Joakim Tjernlund
2009-03-27 10:39     ` Li Yang
2009-03-27 10:39       ` Li Yang
2009-03-27 11:39       ` Joakim Tjernlund [this message]
2009-03-27 13:26     ` Scott Wood
2009-03-30 16:38       ` Joakim Tjernlund
2009-03-30 16:38         ` Joakim Tjernlund
2009-03-30 17:22         ` Scott Wood
2009-03-30 17:34           ` Joakim Tjernlund
2009-03-30 17:34             ` Joakim Tjernlund
2009-03-30 17:45             ` Scott Wood
2009-03-30 18:42               ` Joakim Tjernlund
2009-03-30 19:32                 ` Scott Wood
2009-03-30 19:32                   ` Scott Wood
2009-03-31  9:07                   ` Joakim Tjernlund
2009-03-31  9:07                     ` Joakim Tjernlund
2009-03-31 10:58                     ` Li Yang
2009-03-31 10:58                       ` Li Yang
2009-03-31 14:37                     ` Scott Wood
2009-03-31  8:16           ` Li Yang
2009-03-31  8:16             ` Li Yang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=OFB3E8CC54.5F056769-ONC1257586.003FF190-C1257586.00401420@transmode.se \
    --to=joakim.tjernlund@transmode.se \
    --cc=leoli@freescale.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=netdev@vger.kernel.org \
    --cc=pku.leo@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.