This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Problem with MGETHDR
- From: Gary Thomas <gary at mlbassoc dot com>
- To: Rupesh Kumar <rupeshk at moschip dot com>
- Cc: eCos Discussion <ecos-discuss at ecos dot sourceware dot org>
- Date: Mon, 13 Jun 2005 09:00:06 -0600
- Subject: Re: [ECOS] Problem with MGETHDR
- References: <1118670279.2593.28.camel@soctest> <1118670937.13965.24.camel@hermes> <1118671882.2593.37.camel@soctest>
Please reply to the mailing list so that all may benefit; private
support is only available under contract.
On Mon, 2005-06-13 at 19:41 +0530, Rupesh Kumar wrote:
> Hi Gary,
>
> I am running the http server Published on MLB site.Target Board is ARM
> (ARM926EJS) Board.
>
> what i am assuming is MGETHDR will get the kernel buffers,does it has
> any thing to do with application buffers.(Correct me if i am wrong).
This is true - the network stack has its own set of buffers which are
manipulated via MGETHDR, etc. However, since eCos has a flat,
unprotected memory model, your application can easily mess things up
so that that pool is no longer managed properly.
As I said in a previous email, verify that your network driver is
working properly first, then investigate what's going wrong.
One thing that's always a good idea is to enable assertions in the
eCos kernel. This can help find problems quickly, even elusive ones
like stack overflows. To enable this, enable CYGPKG_INFRA_DEBUG
>
> Regards
> rupesh
>
> On Mon, 2005-06-13 at 19:25, Gary Thomas wrote:
> > On Mon, 2005-06-13 at 19:14 +0530, Rupesh Kumar wrote:
> > > Hi all,
> > >
> > > I am running the http server on eCos (MLB HTTP Server).
> > ^^^^^^^^^^^^^^^
> > There is no such thing; there is a sample HTTP server setup on the MLB
> > website which uses standard eCos with a publicly available HTTP server.
> > I'm sure this is what you meant :-)
> >
> > >
> > > In my ethernet driver eth_drv_recv function in in ISR Context.
> > > After Receving some packets eth_drv_recv function is failing.so i am not
> > > able to receive any more packets.
> > >
> > > I have found that eth_drv_recv() is failing at MGETHDR Macro call.At the
> > > time of failing it is not even entering the macro call.(this i found by
> > > putting some traces in the MGETHDR Macro Call).
> >
> > What platform/target?
> >
> > Most likely, something is going wrong in your application code,
> > possibly a stack overflow, etc.
> >
> > --
> > ------------------------------------------------------------
> > Gary Thomas | Consulting for the
> > MLB Associates | Embedded world
> > ------------------------------------------------------------
> >
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss