bootpc_call() times out

Till Straumann strauman at slac.stanford.edu
Sun Feb 14 20:25:00 UTC 2010


Chris Johns wrote:
> Till Straumann wrote:
>> Chris.
>>
>> I see that on 2008/05/01 you committed changes (authored by folks at 
>> mind.be, it seems)
>> that let bootpc_call() terminate if no server can be contacted for 
>> some time.
>
> Yes that is correct.
>
>>
>> This is different from pre 4.9 behavior which would keep on trying 
>> forever
>> until a server replied.
>>
>> What was the rationale for this (AFAIK undocumented) change ?
>>
>
> I think networking errors at this protocol level that result in a 
> panic should be avoided. At a system it is fine to say reboot on a 
> BOOTP error if that is your requirement but to code into the bootp 
> protocol seem tough on those that wish to implement a different system 
> level design. For example to try a second interface or to hand over to 
> a configuration tool that can allow switching to a different 
> configuration, ie recommissioning equipment.
>
> I know this is not documentation but it was discussed on the list. :)
>
> http://www.rtems.org/pipermail/rtems-users/2008-April/thread.html#3343
> http://www.rtems.org/pipermail/rtems-users/2008-November/004439.html
>
> I will happily change the doco that is wrong. I was not aware the loop 
> for-ever behaviour was documented. Where is it ?
I don't know if it was explicitly documented but I do observe
that existing semantics broke.
>
> FYI the retry bootp code never worked because of a bug I fixed in 
> April 2009.
> It's just that up to 4.9 bootpc_init() would wait for a server
to respond (due to the forever loop in bootpc_call()) which
is no longer the case now.
>> IMO the old 'forever' loop made more sense.
>
> Can you place the call in a loop ?
IMHO bootpc_init() should then repeatedly call bootpc_call().


- Till
>
> Chris




More information about the users mailing list