Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c75e9caa authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

doc: Take tail recursion into account in RCU requirements



This commit classifies tail recursion as an alternative way to write
a loop, with similar limitations.

Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
parent 09f501a0
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1849,7 +1849,8 @@ mass storage, or user patience, whichever comes first.
If the nesting is not visible to the compiler, as is the case with
mutually recursive functions each in its own translation unit,
stack overflow will result.
If the nesting takes the form of loops, either the control variable
If the nesting takes the form of loops, perhaps in the guise of tail
recursion, either the control variable
will overflow or (in the Linux kernel) you will get an RCU CPU stall warning.
Nevertheless, this class of RCU implementations is one
of the most composable constructs in existence.