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