This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Ping the RLTK 8139 driver with a large packet and it crashes


At 07:28 AM 3/9/2007, Wayne Visser wrote:
Hi again,

I did some more checking into this with CYGDBG_DEVS_ETH_RLTK_8139_CHATTER enabled.

When pinged with a large packet (ping -s 40000) this happens:

rltk8139_deliver(eth0): receive buffer overflow
rltk8139_stop(eth0)
rltk8139_start(eth0)
rltk8139_start(eth0): 8139 was successfully reset.

I would guess that the buffers you have allocated are insufficient to hold what they are supposed to hold. This can happen as an off by one error or a more serious "it'll never be that big" kind of initialization code. I would look carefully at the memory allocation for data buffers and insure that the descriptors contain an accurate reflection of how much memory really is allocated. Otherwise the DMA engine will DMA over memory that you did not allocate and can be part of some other part of the kernel or another driver.


--Chuck


-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]