Warning from ORe stub driver

Alexander Valitov valitov79 at mail.ru
Fri Apr 17 18:12:04 CEST 2009


Hi Björn,

sorry for late answer.

> > When I use L4Linux ORe stub driver it constantly prints these warnings:
> >
> > l4lx    | eth0: buffer too small (1)
> > l4lx    | eth0: buffer too small (1)
> > l4lx    | eth0: buffer too small (1)
>
> the internal receive buffer used by the stub to receive network packets
> is too small to suit the packet that ORe is trying to deliver.
> 
> In drivers/net/l4ore.c:146 can you print the value of the variable size
> before and after the call to l4ore_recv_blocking()? 

Situation is really strange here:
Buffer size is 1514, after call it is equal to e.g. 60. But
l4ore_recv_blocking() return value is always 1.
Return value should be the required buffer size or negative error code or
zero.

I checked return value on ORe side. It is zero.

Then I looked deeper into function ore_rxtx_recv_reply() generated by DICE.
It is called on server side if answer was delayed (l4ore_recv_blocking() -
is async).
The function contains following code:

_dice_msg_buffer.rxtx_recv_out._dice_return = _dice_return;

_dice_return is equal to zero here but for some unknown reason
_dice_msg_buffer.rxtx_recv_out._dice_return field never transmitted to
ore_rxtx_recv_call() function. So in ore_rxtx_recv_call() function:

_dice_msg_buffer.rxtx_recv_out._dice_return := 1

I know it sounds strange but it is true.
Maybe it is bug in DICE.
Could you help please?

Best Regards,
  Alexander Valitov
-- 
View this message in context: http://www.nabble.com/Warning-from-ORe-stub-driver-tp22827840p23100785.html
Sent from the L4 mailing list archive at Nabble.com.





More information about the l4-hackers mailing list