From a0f395043e4f4f97774e2867e2b2a376b1ec73fe Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sat, 9 Mar 2019 20:59:34 +0100 Subject: [PATCH] bankd: Don't create 10 workers, but 'num_slots' workers Change-Id: Ie86321e3f61ed86bbbe2ca8cfbd9edde6060bb9f --- src/bankd.h | 1 + src/bankd_main.c | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/bankd.h b/src/bankd.h index 4c53c74..6278a93 100644 --- a/src/bankd.h +++ b/src/bankd.h @@ -83,6 +83,7 @@ struct bankd_worker { struct bankd { struct { uint16_t bank_id; + uint16_t num_slots; } cfg; struct app_comp_id comp_id; diff --git a/src/bankd_main.c b/src/bankd_main.c index 6ebb74e..349236d 100644 --- a/src/bankd_main.c +++ b/src/bankd_main.c @@ -76,6 +76,10 @@ static void bankd_init(struct bankd *bankd) INIT_LLIST_HEAD(&bankd->workers); pthread_mutex_init(&bankd->workers_mutex, NULL); + /* set some defaults, overridden by commandline/config */ + bankd->cfg.bank_id = 1; + bankd->cfg.num_slots = 8; + bankd->comp_id.type = ComponentType_remsimBankd; OSMO_STRLCPY_ARRAY(bankd->comp_id.name, "fixme-name"); OSMO_STRLCPY_ARRAY(bankd->comp_id.software, "remsim-bankd"); @@ -187,8 +191,8 @@ int main(int argc, char **argv) exit(1); g_bankd->accept_fd = rc; - /* create worker threads. FIXME: one per reader/slot! */ - for (i = 0; i < 10; i++) { + /* create worker threads: One per reader/slot! */ + for (i = 0; i < g_bankd->cfg.num_slots; i++) { struct bankd_worker *w; w = bankd_create_worker(g_bankd, i); if (!w)