Unable to create TX buffer recovery queue

Amalaye Oyake amalaye.oyake at jpl.nasa.gov
Wed Jun 6 00:31:03 UTC 2007


Setting MANAGERS=all may be one step but don't some of the

#define CONFIGURE_MAXIMUM_XYZs have default values of 0?

I may need to assign some values to these perhaps?

-AO

-----Original Message-----
From: Daron Chabot [mailto:djc915 at mail.usask.ca] 
Sent: Tuesday, June 05, 2007 5:11 PM
To: Amalaye Oyake
Cc: RTEMS
Subject: Re: Unable to create TX buffer recovery queue


On 5-Jun-07, at 5:21 PM, Amalaye Oyake wrote:

> Hello,
>
> I am using RTEMS on a i386 system (a 400Mhz Pentium II with 128MB  
> of RAM).
> The NIC is a 3C905B (3COM Card) ... RTEMS finds the NIC, does a  
> timer setup,
> identifies the media and says unit elnk1 driver attached.
>
> Then it says
>
> RTEMS: etherlink : Unable to create TX Buffer recovery queue
> RTEMS: fatal error, exiting
>
> What do the above errors mean? How can I fix this?

Have a look at the driver source, elnk.c, line 3525:

if (txDaemonTid == 0)
    {
       if( rtems_message_queue_create( rtems_build_name 
('X','L','c','r'),
                                       sc->numTxbuffers+1,
                                       sizeof(struct TXMD *),
                                       RTEMS_FIFO | RTEMS_LOCAL,
                                       &chainRecoveryQueue ) !=  
RTEMS_SUCCESSFUL )
       {
          rtems_panic( "etherlink : Unable to create TX buffer  
recovery queue\n" );
       }

...

i.e. the directive, rtems_message_queue_create( ), is failing...

I'm going to guess that you haven't included the Message Manager in  
your application's Makefile. If memory is not an issue (and 128 MB is  
*lots* to play with...), just set the "Managers" variable to "all":

i.e. in your Makefile set
MANAGERS=all

That will circumvent several obscure "gotchyaz"...


-- dc




More information about the users mailing list