From: Daniel Wagner <[email protected]>
Whenever a new interface is added or removed, create or delete
a corresponing cgroup.
---
src/device.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/device.c b/src/device.c
index c9e643d..d57f815 100644
--- a/src/device.c
+++ b/src/device.c
@@ -320,6 +320,10 @@ static void remove_device(struct connman_device *device)
DBG("Marker removal failed %d for IPv6, index %d fwmark %d",
ret, device->index, device->fwmark);
+ ret = __connman_cgroup_rem_interface(device->index);
+ if (ret < 0)
+ DBG("cgroup removal failed for for index %d", device->index);
+
__connman_technology_remove_device(device);
if (device->driver->remove)
@@ -548,6 +552,10 @@ void connman_device_set_index(struct connman_device
*device, int index)
if (ret < 0)
DBG("Marker set failed %d for IPv6, index %d fwmark %u",
ret, index, device->fwmark);
+
+ ret = __connman_cgroup_add_interface(index, device->fwmark);
+ if (ret < 0)
+ DBG("Cgroup creation failed for index %d", index);
}
/**
--
1.7.12.rc1.16.g05a20c8
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman