On 29.03.2016 12:52, Thomas Haller
wrote:
On Sat, 2016-02-27 at 09:34 +0100, Stjepan Groš wrote:Hi!Hi Stjepan, after the changes done to master, I took your MIF branch, and re-merged master into it. The result is here: https://cgit.freedesktop.org/NetworkManager/NetworkManager/log/?h=th/mif I didn't actually test it, so don't expect it to work. Anyway, I hope it might be useful for you. Thomas Hi Thomas, thanks for the merge. I'll take a look at it. In the last few days I also managed to merge HEAD with MIF branch and to remove some stuff that probably will not be needed (like activating specific network namespaces from within NMNetnsController). I have to admit that on several occasions I was thinking of throwing everything away and starting from scratch, but that wouldn't take me far... Anyway, I just pushed all the changes I have to GitHub. Quick test shows that NM works. I hit the following obstacles/problems/things: 1. I have yet to try to figure out how did you intend NMPlatform/NMPNetns to work in order to better integrate that into MIF Branch. (maybe your merge will help here) 2. You create singleton NMPlatform object while network namespace support needs many. So, how/where/what to do. 3. How to create new network namespace from outside of NMPlatform object. 4. When creating new network namespace in NMPlatform NETLINK sockets are created, but before they are created network namespace has to be switched. 5. NMPolicy isn't singleton any more, and it is not tied to NMManager object but to the NMNetns object. 6. Certain aspects of NMManager are global for every network namespace, others are not. For example, sleeping state (or should it be separate for every network namespace so that some network namespaces can be suspended?). 7. Related to 7, the best approach would be to refactor NMManager itself, but that would make very hard to keep HEAD and MIF branches in sync. Anyway, I got to the step where I can invoke D-Bus method to create new network namespace and I have to debug that use case now. SG |
Attachment:
signature.asc
Description: OpenPGP digital signature