Hi Andreas,

> first of all: Whenever you boot from NFS and change your network device
> address, the system is going to freeze. This goal of this patch is to be
> able to run ConnMan in an nfsroot (during development) with as little
> difference to a local boot as possible. There may be additional wireless
> devices attached which need to get configured by ConnMan and a user
> interface should be able to query online states and parameters from
> ConnMan, even though no big changes are allowed to the interface
> carrying the connection to the NFS server.
>> 
>>> Booting an nfsroot with connman requires passing -I eth0 to ignore
>>> the interface. This isn't very nice, for at least the following
>>> reasons:
>>> 
>>> * A User interface based on connman is led to believe that there's no
>>> network interface and thus connman seems to be offline when it's not.
>>> * The DHCP lease obtained by the kernel won't get renewed.
>>> * DNS servers won't get obtained from DHCP, thus requiring a workaround
>>> to copy /proc/net/pnp to /etc/resolv.conf and passing -r to connmand.
>> 
>> this sentence makes no sense to me. I do not even know what /proc/net/pnp 
>> actually is.
> 
> When passing ip=dhcp to the kernel, which is common for nfsroot setups,
> Linux generates a resolv.conf at /proc/net/pnp, just as a reference,
> without anybody using the nameservers listed in it.
> 
> So what you get is a network device configured with DHCP but no working
> nameserver setup. And even if you fix it manually, you have to change
> ConnMan's behaviour (compared to a boot from local storage) by passing
> -r to it to disable the DNS proxy or otherwise it will overwrite
> resolv.conf again, without being able to actually resolve anything
> (because of -I eth0).

you learn something new every day. I did not know about /proc/net/pnp. And 
honestly that naming is horrible and non intuitive at all.

However this makes this really simple. I think that ConnMan needs to learn on 
how to deal with /proc/net/pnp and if that is present honor its information. 
Can you post and example of that file here. I never boot over NFS so that might 
be reason I never have seen that file in my life.

I get the feeling that once we handle the presence of this file properly as an 
external config (meaning immutable service), then this will all start working 
nicely. No need to hack "read-only" into the whole codebase. ConnMan already 
has the concept of immutable services.

Regards

Marcel

_______________________________________________
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman

Reply via email to