From b3c5fbec47739ee2bb26f900d1f564a36dc3ad82 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Mon, 4 Feb 2008 17:59:16 +1100 Subject: Remaining changes to implement the prefork process model To use, run 'smbd -M prefork' By default, only the smb service is preforked. 4 children are created, and all listen for new connections. The Linux Kernel 'wake one' behaviour should ensure that only one is given the oportunity to accept. We need to look into the ideal number of worker children, as well as load balancing behaviours. To change, set: prefork children : smb = 6 valid service names (smb in this example) match those in 'server services'. Andrew Bartlett and David Disseldorp (This used to be commit 35313c0aa3fbfdd943edfb7bafd7645b1a0c54e9) --- source4/param/loadparm.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'source4/param') diff --git a/source4/param/loadparm.c b/source4/param/loadparm.c index 2b7b9dd7da..9ec5a59d15 100644 --- a/source4/param/loadparm.c +++ b/source4/param/loadparm.c @@ -2408,6 +2408,8 @@ struct loadparm_context *loadparm_init(TALLOC_CTX *mem_ctx) lp_do_global_parameter_var(lp_ctx, "setup directory", "%s", dyn_SETUPDIR); + lp_do_global_parameter(lp_ctx, "prefork children:smb", "4"); + for (i = 0; parm_table[i].label; i++) { if (!(lp_ctx->flags[i] & FLAG_CMDLINE)) { lp_ctx->flags[i] |= FLAG_DEFAULT; -- cgit