pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-bsc/+/28053 )
Change subject: paging: Avoid unnecessary immediate polling in mainloop
......................................................................
paging: Avoid unnecessary immediate polling in mainloop
We have seen an increased CPU load in osmo-bsc recently since the paging
improvements where merged, centered round poll() calls.
It is expected most of them will be fixed with previous patch. In any
case, let's avoid unnecessary poll() calls being called for no reason.
Related: OS#5922
Change-Id: Ie767bdc8d4353aafe375a424e02d698ef7fd3dea
---
M src/osmo-bsc/paging.c
1 file changed, 4 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/53/28053/1
diff --git a/src/osmo-bsc/paging.c b/src/osmo-bsc/paging.c
index 6e888d4..7f8d362 100644
--- a/src/osmo-bsc/paging.c
+++ b/src/osmo-bsc/paging.c
@@ -469,7 +469,10 @@
LOG_PAGING_BTS(req, req->bts, DPAG, LOGL_DEBUG,
"New req arrived: re-scheduling next batch in %lld.%06ld\n",
(long long)tdiff.tv_sec, tdiff.tv_nsec / 1000);
- osmo_timer_schedule(&bts_entry->work_timer, tdiff.tv_sec, tdiff.tv_nsec /
1000);
+ if (tdiff.tv_sec == 0 && tdiff.tv_nsec == 0)
+ paging_worker(bts_entry);
+ else
+ osmo_timer_schedule(&bts_entry->work_timer, tdiff.tv_sec, tdiff.tv_nsec /
1000);
} /* else: worker is already ongoing submitting initial requests, nothing do be done */
return 0;
--
To view, visit
https://gerrit.osmocom.org/c/osmo-bsc/+/28053
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Ie767bdc8d4353aafe375a424e02d698ef7fd3dea
Gerrit-Change-Number: 28053
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange