On Thursday 22 February 2007 21:01, Sergei Shtylyov wrote:
> Hello.
>
> Mithlesh Thukral wrote:
> >>>>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...
>
>    This wasn;t happeing on x86 probably because the register packet should
> be much shorted there than on PPC...
>
> >>>    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.
>
>     This is already being done by netpoll iself. The thing is that
> hard_start_xmit() doesdn't return NETDEV_TX_BUSY in those drivers. :-/

In addition to that we set trapped. I wonder whether it is possible that a 
queue is stopped and we enter kgdb. It would be a deadlock.
-Amit

>
> > 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