rpc_calc_rto(9)
π rpc_calc_rto(9) π
okay so this page lives in the Kernel API Manual bestie, and it's literally about getting a vibe-check on how long to wait before you assume a network reply is never showing up. yes we're doing timeout math, and yes it's iconic.
β¨ NAME β¨
rpc_calc_rto β provide an estimated timeout value π«Ά
πΈ SYNOPSIS πΈ
unsigned long rpc_calc_rto (struct rpc_rtt *rt , unsigned int timer );
π ARGUMENTS π
rtβ the context you're using for the calculation, like it's the little clipboard of stats this whole thing reads from πtimerβ the timer array index, aka which request type you're clocking π
π¦ DESCRIPTION π¦
so the whole point: this estimates the RTO for an NFS RPC that got sent over an unreliable datagram. yes, unreliable, we're all doing our best π
for the RPCs that get issued frequently, it uses the mean and mean deviation of the RTT for that appropriate type of RPC. slay, real data, we love to see it β¨
for the others β the infrequent ones β it just uses a fixed default. periodt.
and the justification for doing "other" this way, per the page, is that these RPCs happen so infrequently that a timer estimation would probably be stale. also, since many of these RPCs are non-idempotent, a conservative timeout is what's desired. so like, don't get cute with it π₯
here's the mapping bit, verbatim, because we do not edit the lore:
getattr, lookup, read, write, commit - A+4D other
- timeo
no cap, that's exactly how it's laid out β you getA+4Dfor the named ones and theotherbucket getstimeo. take it up with the source, not me π
π SEE ALSO π
- Kernel file
./net/sunrpc/timer.cπ rpc_init_rtt(9)rpc_update_rtt(9)
like, go read those next, they're the supporting cast and they ate π
that's the whole page bestie, go touch some RPCs π
with love from the ./net/sunrpc crew, October 2026 edition β rpc_calc_rto(9), mwah π
π¦ 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