Network tasks

Leon Pollak leonp at plris.com
Mon Aug 18 10:09:01 UTC 2008


On Monday, 18 בAugust 2008, Thomas Dörfler wrote:
> > All network drivers tasks (Tx/Rx daemons) are started via call to
> > rtems_bsdnet_newproc(...).
> >
> > What is the reason fo this?
> > Can they be started with ordniary rtems routins rtems_task_create and
> > start? In paqrticular: this method forces the daemons and stack itself to
> > have the same priority. Is it on purpose?
>
> I think the main purpose is, that they are created and are holder of the
> global network semaphore, whenever the task code is run.
Thanks Thomas. :-)
Yes, it is a good reason. I understand. 

Still the priority issue is unclear. In my case this leads to the CPU been 
busy inside the stack and not receiving the packets in driver. Thus driver 
was stuck after 28 packets.

Now, when I made driver priority a bit higher, it receives all packets without 
a loss, but the application sees those 28 packets only!

Please, can you give me a hint where to look for them? 

P.S. I also checked the ifqmaxlen parameter, but it is 50, not 28...
-- 
Leon



More information about the users mailing list