[lxc-devel] [PATCH 1/2] lxc-start: fix the container leak when daemonize

Qiang Huang h.huangqiang at huawei.com
Sat Jan 18 06:59:58 UTC 2014


When start container with daemon model, we'll have a new daemon
process in lxcapi_start, whose c->numthreads is 2, inherited
from his father. Even his father return to main(), the
lxc_container_put won't affect son's numthreads.

So when daemon stops, he should return to main and do
lxc_container_put again, rather than exit and leave the
container alone.

Signed-off-by: Qiang Huang <h.huangqiang at huawei.com>
---
 src/lxc/lxccontainer.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c
index 0bebdff..ddea0d7 100644
--- a/src/lxc/lxccontainer.c
+++ b/src/lxc/lxccontainer.c
@@ -632,12 +632,10 @@ reboot:
 		goto reboot;
 	}

-	if (daemonize) {
+	if (daemonize)
 		lxc_container_put(c);
-		exit (ret == 0 ? true : false);
-	} else {
-		return (ret == 0 ? true : false);
-	}
+	
+	return (ret == 0 ? true : false);
 }

 /*
-- 
1.8.3



More information about the lxc-devel mailing list