[Xorp-hackers] BGP harness question related to 'runit'

Ben Greear greearb at candelatech.com
Fri Apr 23 21:38:47 PDT 2010

On 04/23/2010 05:18 PM, Atanu Ghosh wrote:
> Hi,
>> From memory, the runit program needs to know that the programs it has
> started are ready to accept XRLs. The argument after the '=''s is a
> program to run to determine that the program is ready. In the case of
> xorp_fea_dummy the call_xrl program makes 10 attempts ("-r 10") to get
> the target name. Without this the programs will be started without
> delay and XRLs will be sent to the programs before they are ready to
> accept them. The runit program does not require the router manager, in
> a simpler universe it would have been nice to have been able to use
> the router manage to start the programs.
> In the xorp/tests directory I was starting to experiment with using
> python only for testing. The runit program not only starts the
> programs but more importantly notices if they fail.

Thanks, I found the problem.

runit was using execv instead of execvp, and I was passing in an executable
name 'call_xrl' instead of a full path to call_xrl.  I changed it to use execvp
for more flexibility.

Also, call_xrl was running it's 10 tries in a tight loop..so I added
a sleep(1) between retries.


Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com

More information about the Xorp-hackers mailing list