aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/RCU/whatisRCU.rst (follow)
AgeCommit message (Collapse)AuthorFilesLines
2022-08-31doc/rcu: Update LWN article URLs and add 2019 articleShao-Tse Hung1-7/+9
This patch adds LWN articles about RCU APIs which were released in 2019. Also, HTTP URLs are replaced by HTTPS. Signed-off-by: Shao-Tse Hung <ccs100203@gmail.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2022-08-31doc: SLAB_TYPESAFE_BY_RCU uses cannot rely on spinlocksPaul E. McKenney1-7/+12
Because the SLAB_TYPESAFE_BY_RCU code does not zero pages that are to be broken up into slabs, the memory returned by kmem_cache_alloc() must be fully initialized, including any spinlocks included in the newly allocated structure. This means that readers attempting to look up an SLAB_TYPESAFE_BY_RCU object must use a reference-counting approach. A spinlock may be acquired only after a reference is obtained, which prevents that object from being passed to kmem_struct_free(), but only while that reference continues to be held. Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2022-08-31doc: Fix list: rcu_access_pointer() is not lockdep-checkedPaul E. McKenney1-3/+9
The rcu_access_pointer() macro does not consult lockdep by design because it is intended to be used outside of RCU read-side critical sections. This commit therefore makes a separate list for it in whatisRCU.rst. Similarly, RCU_LOCKDEP_WARN(), rcu_sleep_check(), and RCU_NONIDLE() do not do anything with pointer access. This commit therefore creates a separate utility-API list for them. Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2022-04-20docs: Update RCU cross-references as suggested in doc-guideAkira Yokosawa1-10/+8
The RCU documentation contains old-style cross references which do not follow the best practices outlined in doc-guide/sphinx.rst. In addition, some of the cross references use URLs that should be replaced by pathnames. Update all of these cross references and adjust the surrounding words. Summary of changes: - out-of-date plaintext file names (*.txt) -> *.rst - references by :ref: tags -> path names of *.rst * use relative paths to .rst files under the RCU/ subdirectory * use abs paths of Documentation/xxx for other .rst files - references by URL under https://www.kernel.org/ -> paths of *.rst - adjust surrounding words of some of updated references. Note: The automarkup.py script interprets references via "*.txt" as if they were via "*.rst", so the *.txt -> *.rst changes should be regarded as cleanups rather than bug fixes. Cc: rcu@vger.kernel.org Cc: linux-doc@vger.kernel.org Tested-by: Bagas Sanjaya <bagasdotme@gmail.com> Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> Signed-off-by: Akira Yokosawa <akiyks@gmail.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2021-11-30doc: Add refcount analogy to What is RCUNeilBrown1-8/+82
The reader-writer-lock analogy is a useful way to think about RCU, but it is not always applicable. It is useful to have other analogies to work with, and particularly to emphasise that no single analogy is perfect. This patch add a "RCU as reference count" to the "what is RCU" document. See https://lwn.net/Articles/872559/ [ paulmck: Apply Akira Yokosawa feedback. ] Reviewed-by: Akira Yokosawa <akiyks@gmail.com> Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2021-01-06doc: Use CONFIG_PREEMPTIONSebastian Andrzej Siewior1-5/+5
CONFIG_PREEMPTION is selected by CONFIG_PREEMPT and by CONFIG_PREEMPT_RT. Both PREEMPT and PREEMPT_RT require the same functionality which today depends on CONFIG_PREEMPT. Update the documents and mention CONFIG_PREEMPTION. Spell out CONFIG_PREEMPT_RT (instead PREEMPT_RT) since it is an option now. Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2020-11-06docs/rcu: Update the call_rcu() APIHui Su1-2/+1
This commit updates the documented API of call_rcu() to use the rcu_callback_t typedef instead of the open-coded function definition. Signed-off-by: Hui Su <sh_def@163.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2020-08-24docs: Fix typo in synchronize_rcu() function nameTobias Klauser1-1/+1
s/sychronize_rcu/synchronize_rcu/ Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2019-12-10doc: Updated full list of RCU API in whatisRCU.rstMadhuparna Bhowmik1-2/+7
This patch updates the list of RCU API in whatisRCU.rst. Signed-off-by: Madhuparna Bhowmik <madhuparnabhowmik04@gmail.com> Tested-by: Amol Grover <frextrite@gmail.com> Tested-by: Phong Tran <tranmanphong@gmail.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
2019-12-10doc: Convert whatisRCU.txt to .rstPhong Tran1-0/+1149
This commit updates whatisRCU.txt to the new .rst format. This change includes: - Formatting bullet lists - Adding literal blocks - Links from table of contents to corresponding sections - Links to external documents - Reformat quick quizzes Signed-off-by: Phong Tran <tranmanphong@gmail.com> Tested-by: Madhuparna Bhowmik <madhuparnabhowmik04@gmail.com> [ tranmanphong: Apply Amol Grover feedback. ] Reviewed-by: Amol Grover <frextrite@gmail.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>