X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=doc%2Frcu-api.md;h=b305fcfa5bf4cf176a2e1cde1a55b5d75b7b941b;hb=HEAD;hp=4163eefb287a9f7f934fa6642246a2061c570471;hpb=a88a3a8607e2aa7bbd5848f5d1f80c8cb0d55715;p=urcu.git diff --git a/doc/rcu-api.md b/doc/rcu-api.md index 4163eef..b305fcf 100644 --- a/doc/rcu-api.md +++ b/doc/rcu-api.md @@ -1,3 +1,9 @@ + + Userspace RCU API ================= @@ -64,20 +70,25 @@ actually waited is called an RCU grace period. struct urcu_gp_poll_state start_poll_synchronize_rcu(void); ``` -Start polling on grace period. The returned poll state should be -queried using `poll_state_synchronize_rcu` to check whether the -grace period has completed. +Provides a handle for checking if a new grace period has started +and completed since the handle was obtained. It returns a +`struct urcu_gp_poll_state` handle that can be used with +`poll_state_synchronize_rcu` to check, by polling, if the +associated grace period has completed. -`start_poll_synchronize_rcu` should be called from registered RCU -read-side threads. For the QSBR flavor, the caller should be online. +`start_poll_synchronize_rcu` must only be called from +registered RCU read-side threads. For the QSBR flavor, the +caller must be online. ```c bool poll_state_synchronize_rcu(struct urcu_gp_poll_state state); ``` -Poll the grace period state. Return true if quiescence was reached since -the grace period was started, return false otherwise. +Checks if the grace period associated with the +`struct urcu_gp_poll_state` handle has completed. If the grace +period has completed, the function returns true. Otherwise, +it returns false. ```c