svc_create_pooled(9)
πΈ NAME πΈ
Okay so this is the svc_create_pooled(9) page from the Kernel API Manual, and it's literally about creating an RPC service with pooled threads. Slay. π
β¨ SYNOPSIS β¨
struct svc_serv * svc_create_pooled (struct svc_program *prog , unsigned
int nprogs , struct svc_stat *stats , unsigned int bufsize , int
(*threadfn)(void *data) );
π ARGUMENTS π
progβ the array of RPC programs that your new service is gonna handle, bestie.nprogsβ how many programs are actually in that array. Count carefully, queen.statsβ the stats struct, if desired. Optional-ish vibe, but keep it in mind. π«Άbufsizeβ the maximum message size forprog. Big messages need room, periodt.threadfnβ a function to service RPC requests forprog. The main character worker function, fr fr.
π DESCRIPTION π
It returns an instantiated struct svc_serv object β or NULL. That's the whole tea. No cap. β¨
Like, you call it, and you either get your shiny instantiatedstruct svc_servobject or you getNULL. Iconic either way, ngl. π
π₯ SEE ALSO π₯
Kernel file ./net/sunrpc/svc.c, plus these very valid, very iconic man pages:
sunrpc_get_pool_mode(9)svc_serv_nrpools(9)svc_pool_for_cpu(9)svc_create(9)svc_pool_wake_idle_thread(9)svc_new_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)
xoxo, your kernel bestie π
β this cutie came from ./net/sunrpc, dated October 2026, and it's all about svc_create_pooled(9). π¦πΈ
π¦ 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