tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Making dhcpcd work on diskless clients
In article <54D9E90D.8040603%marples.name@localhost>,
Roy Marples <roy%marples.name@localhost> wrote:
>On 10/02/2015 04:25, Alan Barrett wrote:
>> On Sun, 08 Feb 2015, Roy Marples wrote:
>>>> since this problem goes away if we make all of dhcpcd in-memory first,
>>>> possibly what happens here is that with i386 or amd64, the layout is
>>>> such that we don't ever try to fault in code during the small period
>>>> of time that the route is missing.
>>>
>>> I don't fully understand what you are saying.
>>
>> Some part of the code that you are trying to run may not be in memory,
>> so you may encounter a page fault when you try to run it. Responding to
>> the page fault involves reading information from the the file system.
>> On a diskless client, reading from the file system actually involves
>> transferring data over the network from the remote file server. If you
>> try to read from the file server at a time when the routing table does
>> not contain a usable route to the file server, then you lose.
>>
>>> But do you have an idea of how this can be fixed then without dhcpcd
>>> having to learn the routing table at load time?
>>
>> Do you currently use RTM_DELETE and RTM_ADD? Can you use RTM_CHANGE
>> instead?
>
>The last time I tried using RTM_CHANGE, it did not clear the learned
>cloned routes which RTM_DELETE handily does for me. This is important if
>we need to move a subnet route from one interface to another.
You can have a flag that selects the behavior. Also you can see if the
routes need changing before you go and delete them only to re-add them...
christos
Home |
Main Index |
Thread Index |
Old Index