<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/Documentation/RCU, branch v2.6.26</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/Documentation/RCU?h=v2.6.26</id>
<link rel='self' href='https://git.amat.us/linux/atom/Documentation/RCU?h=v2.6.26'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2008-02-14T00:21:18Z</updated>
<entry>
<title>remove final fastcall users</title>
<updated>2008-02-14T00:21:18Z</updated>
<author>
<name>Harvey Harrison</name>
<email>harvey.harrison@gmail.com</email>
</author>
<published>2008-02-13T23:03:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b5606c2d4447e80b1d72406af4e78af1eda611d4'/>
<id>urn:sha1:b5606c2d4447e80b1d72406af4e78af1eda611d4</id>
<content type='text'>
fastcall always expands to empty, remove it.

Signed-off-by: Harvey Harrison &lt;harvey.harrison@gmail.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Preempt-RCU: update RCU Documentation.</title>
<updated>2008-01-25T20:08:25Z</updated>
<author>
<name>Paul E. McKenney</name>
<email>paulmck@linux.vnet.ibm.com</email>
</author>
<published>2008-01-25T20:08:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f85d6c7168887e6659f4d00fa5f34fa23dbde1bb'/>
<id>urn:sha1:f85d6c7168887e6659f4d00fa5f34fa23dbde1bb</id>
<content type='text'>
This patch updates the RCU documentation to reflect preemptible RCU as
well as recent publications.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
Signed-off-by: Gautham R Shenoy &lt;ego@in.ibm.com&gt;
Reviewed-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>Add Documentation/RCU/00-Index</title>
<updated>2007-10-17T15:43:07Z</updated>
<author>
<name>Rob Landley</name>
<email>rob@landley.net</email>
</author>
<published>2007-10-17T06:31:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e54e54a94cde0c2409974a4222ef2eda2e5609c8'/>
<id>urn:sha1:e54e54a94cde0c2409974a4222ef2eda2e5609c8</id>
<content type='text'>
Add Documentation/RCU/00-INDEX

Signed-off-by: Rob Landley &lt;rob@landley.net&gt;
Acked-by: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Document the fact that RCU callbacks can run in parallel</title>
<updated>2007-07-16T16:05:47Z</updated>
<author>
<name>Paul E. McKenney</name>
<email>paulmck@linux.vnet.ibm.com</email>
</author>
<published>2007-07-16T06:41:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ef48bd246124ccdef0e1fa5b03b62d69cbf71fa7'/>
<id>urn:sha1:ef48bd246124ccdef0e1fa5b03b62d69cbf71fa7</id>
<content type='text'>
Add an item to the RCU documentation checklist noting that RCU callbacks
can run in parallel.

Signed-off-by: Paul E. McKenney &lt;paulmck@linux.vnet.ibm.com&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] rcu: add sched torture type to rcutorture</title>
<updated>2006-10-04T14:55:31Z</updated>
<author>
<name>Josh Triplett</name>
<email>josht@us.ibm.com</email>
</author>
<published>2006-10-04T09:17:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4b6c2cca6eef9cc4a15350bf1c61839e12e08b84'/>
<id>urn:sha1:4b6c2cca6eef9cc4a15350bf1c61839e12e08b84</id>
<content type='text'>
Implement torture testing for the "sched" variant of RCU, which uses
preempt_disable, preempt_enable, and synchronize_sched.

Signed-off-by: Josh Triplett &lt;josh@freedesktop.org&gt;
Acked-by: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] rcu: add rcu_bh_sync torture type to rcutorture</title>
<updated>2006-10-04T14:55:31Z</updated>
<author>
<name>Josh Triplett</name>
<email>josht@us.ibm.com</email>
</author>
<published>2006-10-04T09:17:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=11a147013e39ff4cb031395cb78a9d307c4799cd'/>
<id>urn:sha1:11a147013e39ff4cb031395cb78a9d307c4799cd</id>
<content type='text'>
Use the newly-generic synchronous deferred free function to implement torture
testing for rcu_bh using synchronize_rcu_bh rather than the asynchronous
call_rcu_bh.

Signed-off-by: Josh Triplett &lt;josh@freedesktop.org&gt;
Acked-by: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] rcu: add rcu_sync torture type to rcutorture</title>
<updated>2006-10-04T14:55:31Z</updated>
<author>
<name>Josh Triplett</name>
<email>josht@us.ibm.com</email>
</author>
<published>2006-10-04T09:17:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=20d2e4283a97665a3db78c60dfa342a0c7c1b180'/>
<id>urn:sha1:20d2e4283a97665a3db78c60dfa342a0c7c1b180</id>
<content type='text'>
Use the newly-generic synchronous deferred free function to implement torture
testing for RCU using synchronize_rcu rather than the asynchronous call_rcu.

Signed-off-by: Josh Triplett &lt;josh@freedesktop.org&gt;
Acked-by: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] RCU: add fake writers to rcutorture</title>
<updated>2006-10-04T14:55:31Z</updated>
<author>
<name>Josh Triplett</name>
<email>josht@us.ibm.com</email>
</author>
<published>2006-10-04T09:17:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b772e1dd4b1e60a7a160f7bd4ea08e28394ceb54'/>
<id>urn:sha1:b772e1dd4b1e60a7a160f7bd4ea08e28394ceb54</id>
<content type='text'>
rcutorture currently has one writer and an arbitrary number of readers.  To
better exercise some of the code paths in RCU implementations, add fake
writer threads which call the synchronize function for the RCU variant in a
loop, with a delay between calls to arrange for different numbers of
writers running in parallel.

[bunk@stusta.de: cleanup]
Acked-by: Paul McKenney &lt;paulmck@us.ibm.com&gt;
Cc: Dipkanar Sarma &lt;dipankar@in.ibm.com&gt;
Signed-off-by: Josh Triplett &lt;josh@freedesktop.org&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] srcu-3: add SRCU operations to rcutorture</title>
<updated>2006-10-04T14:55:30Z</updated>
<author>
<name>Paul E. McKenney</name>
<email>paulmck@us.ibm.com</email>
</author>
<published>2006-10-04T09:17:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b2896d2e75c87ea6a842c088db730b03c91db737'/>
<id>urn:sha1:b2896d2e75c87ea6a842c088db730b03c91db737</id>
<content type='text'>
Adds SRCU operations to rcutorture and updates rcutorture documentation.
Also increases the stress imposed by the rcutorture test.

[bunk@stusta.de: make needlessly global code static]
Signed-off-by: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Cc: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] srcu-3: RCU variant permitting read-side blocking</title>
<updated>2006-10-04T14:55:30Z</updated>
<author>
<name>Paul E. McKenney</name>
<email>paulmck@us.ibm.com</email>
</author>
<published>2006-10-04T09:17:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=621934ee7ed5b073c7fd638b347e632c53572761'/>
<id>urn:sha1:621934ee7ed5b073c7fd638b347e632c53572761</id>
<content type='text'>
Updated patch adding a variant of RCU that permits sleeping in read-side
critical sections.  SRCU is as follows:

o	Each use of SRCU creates its own srcu_struct, and each
	srcu_struct has its own set of grace periods.  This is
	critical, as it prevents one subsystem with a blocking
	reader from holding up SRCU grace periods for other
	subsystems.

o	The SRCU primitives (srcu_read_lock(), srcu_read_unlock(),
	and synchronize_srcu()) all take a pointer to a srcu_struct.

o	The SRCU primitives must be called from process context.

o	srcu_read_lock() returns an int that must be passed to
	the matching srcu_read_unlock().  Realtime RCU avoids the
	need for this by storing the state in the task struct,
	but SRCU needs to allow a given code path to pass through
	multiple SRCU domains -- storing state in the task struct
	would therefore require either arbitrary space in the
	task struct or arbitrary limits on SRCU nesting.  So I
	kicked the state-storage problem up to the caller.

	Of course, it is not permitted to call synchronize_srcu()
	while in an SRCU read-side critical section.

o	There is no call_srcu().  It would not be hard to implement
	one, but it seems like too easy a way to OOM the system.
	(Hey, we have enough trouble with call_rcu(), which does
	-not- permit readers to sleep!!!)  So, if you want it,
	please tell me why...

[josht@us.ibm.com: sparse notation]
Signed-off-by: Paul E. McKenney &lt;paulmck@us.ibm.com&gt;
Signed-off-by: Josh Triplett &lt;josh@freedesktop.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
