ethernet driver: hard_start_xmit

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

 



Hi,

I have written a network device driver (Linux kernel: 2.6.20.1) on ARM
based target board.
I have implemented ether_tx, which is called whenever hard_start_xmit is
called.

--------------------------------------
[ PINGing from BOARD TO OTHER HOST ]

The network driver is working.  I am able to ping to other hosts and i
am able to get the reply without any problem

Q1.  For large packet size say (2048, 4096) after sometime ping exits
saying "sendto: buffer space unavailable"

---------------------------------------
[ PINGing from other HOST to BOARD ]

ping works but only for some time.  It stops working by saying "Request
timed out" after some successful pinging.
The number of times ping succeeds depend on the packet size

Packet size = 64, ping stops working exactly after 449 times
Packet size = 4096, ping stops working exactly after 28 times.

I did some digging and found that when ping stops working, ether_tx(or
hard_start_xmit) is not called at all.  Though the packets are recieved
correctly by ether_rx.  After ping stops, any more ping of any packet
size does not work. Also i found that at this stage if i ping from board
to host it works.

Q2.  What might be the reason for ping to stop?

Regards
harsha




-- 
  Harsha
  [email protected]

-- 
http://www.fastmail.fm - Accessible with your email software
                          or over the web

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux