On Thursday 22 February 2007 02:47, Sergei Shtylyov wrote:
> Hello, I wrote:
> >>This patch gets rid of annoying (and seemingly unavoidable) messages
> >> emitted by the 8139too driver when using it for KGDBoE.  It also makes
> >> KGDBoE work at least somehow on my PowerPC board -- without it cross-gdb
> >> just doesn't connect.
> >>
> >>Signed-off-by: Sergei Shtylyov <[EMAIL PROTECTED]>
> >>
> >>---
> >>Even with this patch, the packets probably get stuck somewhere in the
> >> driver, as cross-gdb sees tail of the $g packet reply only in reply to
> >> next packet...
> >
> >     Argh! That's all because of the CONFIG_NETPOLL_TRAP that
> > CONFIG_KGDBOE* options select -- since the initial breakpoint enables
> > trapping via KGDBoE's pre_exception() handler, netif_{stop/wake}_queue()
> > stop to work and that causes KGDBoE to literally flood 8139too with
> > packets (although it can't queue up more than 4). Looks like a general
> > design issue to me... :-/
>
>    Well, maybe not. But many drivers are surely unprepared to their
> hard_start_xmit() method being called with queue alraedy stopped and those
> with small TX queue (like natsemi with which we're also having trouble)
> would get flooded as well. I'm going to submit a patch to netdev adding
> extra check for TX ring being full -- after/if it gets accepted, this patch
> won't be needed anymore.
Here is what comes to my mind right away. It might need some more polishing or 
cleaning up:

A potential solution will be to check the if hard_start_xmit() returns 
NETDEV_TX_BUSY. In case transmit queue is busy (due to lot of threads or 
queue getting full), we should wait in netpoll_send_skb(), call a cleanup 
through poll() and then retry sending packet.

Regards,
Mithlesh Thukral
>
> WBR, Sergei
>
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Kgdb-bugreport mailing list
> Kgdb-bugreport@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Kgdb-bugreport mailing list
Kgdb-bugreport@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport

Reply via email to