Select Git revision
backend.cmod
-
Marcus Cromnow authored
This delays the wakeup pipe until after the backend is actually used. The main reason is that after fork() all copies of the process always have the same wakeup pipe. Waiting until the first use of the backend makes wake_up_backend() useful again in forked processes (as long as the backend has not been used before the fork). Fixes a bug in turboproxy, we use a master backend system where all modules are loaded and partially initializes in a 'master' backend, and new backends are then forked of from the master as needed.
Marcus Cromnow authoredThis delays the wakeup pipe until after the backend is actually used. The main reason is that after fork() all copies of the process always have the same wakeup pipe. Waiting until the first use of the backend makes wake_up_backend() useful again in forked processes (as long as the backend has not been used before the fork). Fixes a bug in turboproxy, we use a master backend system where all modules are loaded and partially initializes in a 'master' backend, and new backends are then forked of from the master as needed.