Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12603 Discussions

lockup problems, altera nios2 web server demo

Honored Contributor II

Hi Everybody - 


We have been working on a project using nios2/lwip/ucosii. 

Development is taking place on a cyclone eval board, and we 

are now using the "release" version of the nios 2 development 



We wrote some a test code for use with the "out of the box" untouched 

web server application. The code repeatedly hits the nios board with 

http get requests. 


We are seeing: 


(1) there is an occasional pause which occurs when the test code 

is trying to connect. This pause occurs typically once out of a series 

of 20-200 accesses and lasts for about a second or two before  

resuming. During the pauses, the system nios board continues to 

respond properly to ping requests. It is suspected that there are some 

old connections left laying around, and when a limit is reached, a delay 

is caused until a connection frees up. This behaviour is a bit strange,  

but not fatal. 


(2) More troubling, after typically about 500-25000 accesses, the board 

consistently locks up. At this point, the board seems totally dead, and 

does not respond to pings. 


= = = = = = = = = = = = = = = = 


Has anyone experienced anything similar?  


The code to do the repeated http requests (a linux/unix application) is here: (

The command used was: 

hammer 80 index.html 1000000 10000 


= = = = = = = = = = = = = = = = =
0 Kudos
2 Replies
Honored Contributor II

Hi Fred, 


I did the web server demo on Nios II. Part of its design is, when over-burdened with connection requests (something that can easily happen running at a slow clock speed, with no d-cache, and no protocol stack optimizations as we have the HTTP server running on). It will handle a couple of simultaneous HTTP sessions (from people hitting it with web browses), but that is it.  


Like a full-fledged HTTP server we designed it to ignore incoming connection requests that it cannot service, and only to heed those connections when the previous ones are complete. If you *really* hammer on it, its designed to reset any connections that get into a bad state and recover after 5 seconds. However, what you describe sounds like a more legitamate failure we haven't seen... just curious, did you submit your 'hammer' application to Altera's mysupport? If that was you, I wanted to let you know that I got notification from our support engineer on your case about this last night; I have your app. and will likely be taking a detailed look at the problem today. 


- Trogdor (real name is Jesse)
0 Kudos
Honored Contributor II

Hi Trogdor - 


The "hammer" app was indeed submitted to Altera's mysupport earlier by a co-worker. 


Thanks for looking into this problem for us. 


0 Kudos