svc_new_thread(9)
π svc_new_thread(9) β the kernel API manual, bestie edition π§
okay so you found the svc_new_thread(9) page, welcome, pull up a chair π this is the whole thing, nothing skipped, i promise.
β¨ NAME β¨
svc_new_thread β spawn a new thread in the given pool π«Ά
πΈ SYNOPSIS πΈ
int svc_new_thread (struct svc_serv *serv , struct svc_pool *pool );
π ARGUMENTS π
servβ the serv to which the pool belongs π like, the whole operation.poolβ pool in which thread should be spawned π¦ the specific lil home for your new thread.
π DESCRIPTION π
So the vibe is: create a new thread inside pool, which is a part of serv. That's it, that's the whole errand. β¨
β οΈ real talk though β the caller must hold the service mutex. not optional, not "i'll grab it later", not "my friend is holding it". hold it. π
Returns 0 on success, or -errno on failure. so like, zero means slay, negative means something went sideways and you get an errno about it π
π SEE ALSO π
Kernel file ./net/sunrpc/svc.c π and honestly the whole friend group:
sunrpc_get_pool_mode(9)svc_serv_nrpools(9)svc_pool_for_cpu(9)svc_create(9)svc_create_pooled(9)svc_pool_wake_idle_thread(9)svc_set_pool_threads(9)svc_set_num_threads(9)svc_serv_maxthreads(9)svc_rqst_replace_page(9)svc_rqst_release_pages(9)svc_exit_thread(9)svc_register(9)svc_stat_alloc_counts(9)svc_stat_free_counts(9)svc_process(9)svc_process_bc(9)svc_max_payload(9)svc_proc_name(9)svc_encode_result_payload(9)svc_fill_symlink_pathname(9)
okay that's the whole page, no cap, every single flag and reference accounted for π go forth and spawn responsibly. mwah π«Ά
this icon of a manpage lives in ./net/sunrpc and is stamped October 2026 β periodt, that's the sign-off bestie π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms