Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: xen and networking problems



On Tue, Nov 03, 2009 at 04:57:10PM -0700, Brook Milligan wrote:
> Manuel Bouyer writes:
>  > Next step would be to put instrumentation in dev/ic/i82557.c,
>  > fxp_start() and fxp_rxintr() are called (and if so, what they
>  > do with the mbuf).
> 
> Ok, I've started that.  
> 
> For reference, I'm working with i82577.c v1.129.
> 
> I added some printf() statements at the beginning and end of
> fxp_start, fxp_rxintr, and fxp_txintr.  fxp_rxintr is called many
> times, presumably for every packet received by the hardware.
> 
> For each outgoing packet, for example created by ping, fxp_start is
> called and completes, then fxp_txintr is called and completes.
> 
> At this point, I'm not certain how to investigate the fate of mbufs.
> 
> Any help from people who know something about this driver or kernel
> buffer handling is greatly appreciated.

Did you check with tcpdump on the remote end that the remote end is
getting the ICMP echo request sent by the fxp adapter when ping is
running ? That would confirm that transmit is working.

For receive, you could add a printf to check that in fxp_rxintr,
the code does call (*ifp->if_input)(ifp, m);
If it does not, the next step is to add more printf in fxp_rxintr to
see at which point the packet is dropped (there are many places for this,
basically each time that FXP_INIT_RFABUF() is called.

-- 
Manuel Bouyer, LIP6, Universite Paris VI.           
Manuel.Bouyer%lip6.fr@localhost
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index