[Olsr-dev] strange log message when received netlink error

Saverio Proto (spam-protected)
Fri Mar 29 01:26:40 CET 2013


Hello,

I am back to the topic:
Received netlink error code Invalid argument (-22)

I tracked down the problem. The fact is that in our network we are
testing plugins that are unstable, so we have unstable routers pushing
impossible routes to neighbors. We have networks with '0'netmask, or
with '0' as a gateway. Wow !

the point is that the current code is not handling the case were an
impossible route is pushed to the kernel with a netlink socket, and
the kernel replies -22.

Until the buggy routers are online we get messages like:

Mar 26 23:43:30 svn olsrd[28208]: Add route 192.168.178.0/0 from
192.168.178.2 via 10.0.1.177, cost 32.361, metric 6, v 525918:
Resource temporarily unavailable
Mar 26 23:43:30 svn olsrd[28208]: Received netlink error code Invalid
argument (-22)

When the buggy routers go offline, the route will expire and we get
the same message forver but this time is a "Del route" message.

So when the route expires we get infinites retries of deleting this
route from the kernel because the route exists in the olsrd process
database.

In src/process_routes.c line 343 we delete the route from the
datastructure only of deletion from Kernel was successfull.

Where is the right point of the code to handle this situation ?

Saverio




More information about the Olsr-dev mailing list