bitbake: lib/bb/main.py: Shutdown cooker when server isn't foreground

The cooker is added to the BBServer and then detached creating
a copy of the cooker in the process, if the server isn't in
foreground it cause fd leaks on inotify this can be see using
many instances of tinfoil.

Example:

from bb.tinfoil import Tinfoil
while True:
    with Tinfoil() as tinfoil:
        input("Pre\n")
        tinfoil.prepare(config_only=True)
        input("Post\n")

[YOCTO #10873]

(Bitbake rev: 2ada2efb057a291eb34c66d975eb339232137956)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Aníbal Limón 2017-01-09 10:22:51 -06:00 committed by Richard Purdie
parent 509d26f95b
commit 8a3221e6e5
1 changed files with 1 additions and 0 deletions

View File

@ -367,6 +367,7 @@ def start_server(servermodule, configParams, configuration, features):
raise
if not configParams.foreground:
server.detach()
cooker.shutdown()
cooker.lock.close()
return server