Hi Jim,
Thanks for your suggestions. Unfortunately - and i know that's actually
the totally wrong answer - i have no knowledge about the Ethernet
driver. I'm using this from my port of FREERtos for the AT91SAM7. Can
you maybe give me some hints where to look and what section pointed to
the error you've found ... maybe we're using the same port? I guess it's
the emacif.c ...? Any help is appreciated, maybe you can post me what
YOUR bug was?
I was thinking about fetching some logs, putting my Netbook here
recording the debug output of my devices. But i have some traffic in my
system (maybe i'll throttle it a bit down, but this would change the
setup and maybe influence the problem), so the recorded debug outputs
will be really big in a short time. But it seems to be the only way for
this.
@Kieran: As soon i have a trace of it i will raise the bug ... but first
i have to find a trace where it comes from. Big job for me as i'm not so
deep into LwIP internals :-(
Thanks so far
Marco
Am 23.06.2010 14:06, schrieb Pettinato, Jim:
Marco,
If it were me, I would (at least initially) suspect the Ethernet driver.
Are you buffering packets at the driver level on input? Is it possible
that your buffer is being overrun due to bursts of broadcast packets
or something similar?
I recommend that you 1) enable all the debug and statistics options in
the lwIP stack; and 2) use Wireshark to capture the network traffic so
when it happens again you can examine the actual activity that led to
the reboots for clues to the reason.
I had a similar issue early in my product development; it turned out
that a bug in the Ethernet driver task (in a section of code designed
to handle overruns) created a hole where a packet arriving exactly
between two instructions corrupted a linked list and led to an address
exception/crash.
Hope this helps.
*From:* lwip-users-bounces+jim.pettinato=fmcti....@nongnu.org
[mailto:lwip-users-bounces+jim.pettinato=fmcti....@nongnu.org] *On
Behalf Of *Marco Jakobs
*Sent:* Tuesday, June 22, 2010 3:56 PM
*To:* lwip-users@nongnu.org
*Subject:* [lwip-users] Windows 7 Startup crashes LwIP and Free RTOS
Hi all,
i have noticed a really strange effect here. On my "home control
project" i actually have 4 devices with Free RTOS and LwIP 1.31
running. They are communicating together over a Ethernet Switch, which
is also connected to my home network. The system is running 24/7 in a
test here on my desk, did it weeks without problems.
Suddenly, 3 weeks ago i saw reboots of some devices in their protocol
logs (i worked not on the firmware at this time, so no change appeared
to the system). These reboots were happening sometimes on a single
device, but also on more than one device at the same time. The strange
was: It never appeared when i was away from home.
Counting one and one together, it really started after i teared my PCs
down and made a new setup with Windows 7 (instead of XP). Next, in
most cases the restarts occured when i've switched on my computer (in
startup phase), in rare cases when it is running, but never when it is
off.
Today i noticed a reset of all 4 devices *exactly at the same time*
(the RTC's of the devices are synchronized). My Watchdog reports me a
complete crash of >80% of the tasks, so something teared down the
whole RTOS. It was no power problem, it was a software crash. As the
devices are completely independent, the exact parrallel crash points
again to "something from outside". Of course my PC was running.
There seems to be something caused by WIN7 over the ethernet spread to
all devices (Broadcast, Multicast), maybe putting LwIP in an
indefinite loop (it has a higher task priority in Free RTOS here, so
in this case it may stop lower priority tasks from operating, causing
the SW watchdog failure). As my watchdog task has the highest priority
of all task and this task did never crash, it may be an argument for that.
Sorry that i have no more information at this time, but i just want to
point to this and ask in the round if anybody has seen something like
this here. I may put my notebook here to the debug port of one of the
devices to maybe catch some more information (i.e. an assert message)
when this happens to get closer on this.
Any ideas or "you have to try" 's are highly welcome.
Kind regards
Marco
_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/lwip-users
_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/lwip-users