]> git.ipfire.org Git - thirdparty/asterisk.git/commit
pjsip: Move from threadpool to taskpool
authorJoshua C. Colp <jcolp@sangoma.com>
Thu, 4 Dec 2025 21:08:58 +0000 (17:08 -0400)
committerJoshua C. Colp <jcolp@sangoma.com>
Tue, 16 Dec 2025 17:03:43 +0000 (17:03 +0000)
commitd23fcd30a85b0fa0e32eff3e1c25ce2dba50b7d8
tree1ec86f6995c8bfa40da01b3624b88f85d5551654
parentfbe735d613a9303667634489c9ef240589e2a4f4
pjsip: Move from threadpool to taskpool

This change moves the PJSIP module from the threadpool API
to the taskpool API. PJSIP-specific implementations for
task usage have been removed and replaced with calls to
the optimized taskpool implementations instead. The need
for a pool of serializers has also been removed as
taskpool inherently provides this. The default settings
have also been changed to be more realistic for common
usage.

UpgradeNote: The threadpool_* options in pjsip.conf have now
been deprecated though they continue to be read and used.
They have been replaced with taskpool options that give greater
control over the underlying taskpool used for PJSIP. An alembic
upgrade script has been added to add these options to realtime
as well.
23 files changed:
channels/chan_pjsip.c
configs/samples/pjsip.conf.sample
contrib/ast-db-manage/config/versions/dc7c357dc178_add_taskpool_options_to_system.py [new file with mode: 0644]
include/asterisk/res_pjsip.h
include/asterisk/res_pjsip_session.h
include/asterisk/taskpool.h
main/taskpool.c
res/res_pjsip.c
res/res_pjsip/config_system.c
res/res_pjsip/include/res_pjsip_private.h
res/res_pjsip/pjsip_config.xml
res/res_pjsip/pjsip_distributor.c
res/res_pjsip/pjsip_options.c
res/res_pjsip/pjsip_resolver.c
res/res_pjsip_mwi.c
res/res_pjsip_outbound_publish.c
res/res_pjsip_outbound_registration.c
res/res_pjsip_refer.c
res/res_pjsip_rfc3326.c
res/res_pjsip_rfc3329.c
res/res_pjsip_session.c
tests/test_taskpool.c
tests/test_threadpool.c