On Tue, Apr 21, 2020 at 07:04:08PM +0200, Mauro Carvalho Chehab wrote: > There are several troubles at the bibtex entries with > prevent them to be processed by LaTeX: > > - On LaTeX, comment lines start with '%', but here, comments > are starting with "#"; > - Underlines should be escaped. > - While the best would be to use \url{} for all URL entries, > let's do it at least for a couple that would otherwise > produce errors on LaTeX. > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@xxxxxxxxxx> Another approach might be just to link to a public repo containing cleaned-up versions of these bibliography entries: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/perfbook.git/tree/bib/RCU.bib That would have the advantage of keeping this information in only one place, and reducing the number of updates required. Thoughts? Thanx, Paul > --- > Documentation/RCU/RTFP.txt | 98 +++++++++++++++++++------------------- > 1 file changed, 49 insertions(+), 49 deletions(-) > > diff --git a/Documentation/RCU/RTFP.txt b/Documentation/RCU/RTFP.txt > index 9bccf16736f7..6b93fbbfad19 100644 > --- a/Documentation/RCU/RTFP.txt > +++ b/Documentation/RCU/RTFP.txt > @@ -231,7 +231,7 @@ Bibtex Entries > Use garbage collector to clean up data after everyone is done with it. > . > Oldest use of something vaguely resembling RCU that I have found. > - http://portal.acm.org/citation.cfm?id=320619&dl=GUIDE, > + \url{http://portal.acm.org/citation.cfm?id=320619&dl=GUIDE}, > [Viewed December 3, 2007] > } > } > @@ -379,7 +379,7 @@ for Programming Languages and Operating Systems}" > } > } > > -# Was Adams91, see also syncrefs.bib. > +% Was Adams91, see also syncrefs.bib. > @Book{Andrews91textbook > ,Author="Gregory R. Andrews" > ,title="Concurrent Programming, Principles, and Practices" > @@ -566,7 +566,7 @@ Operating System Design and Implementation}" > Use of RCU-like facility in K42/Tornado. Another independent > invention of RCU. > See especially pages 7-9 (Section 5). > - http://www.usenix.org/events/osdi99/full_papers/gamsa/gamsa.pdf > + \url{http://www.usenix.org/events/osdi99/full_papers/gamsa/gamsa.pdf} > [Viewed August 30, 2006] > } > } > @@ -1037,10 +1037,10 @@ Add per-cpu batch counter" > RCU runs reasonably on a 512-CPU SGI using Manfred Spraul's patches, > which may be found at: > https://lkml.org/lkml/2004/5/20/49 (split vars into cachelines) > - https://lkml.org/lkml/2004/5/22/114 (cpu_quiet() patch) > + https://lkml.org/lkml/2004/5/22/114 (cpu\_quiet() patch) > https://lkml.org/lkml/2004/5/25/24 (0/5) > https://lkml.org/lkml/2004/5/25/23 (1/5) > - https://lkml.org/lkml/2004/5/25/265 (works for Jack) > + https://lkml.org/lkml/2004/5/25/265 (works for Jack) > https://lkml.org/lkml/2004/5/25/20 (2/5) > https://lkml.org/lkml/2004/5/25/22 (3/5) > https://lkml.org/lkml/2004/5/25/19 (4/5) > @@ -1109,7 +1109,7 @@ Oregon Health and Sciences University" > \url{http://lkml.org/lkml/2004/8/6/237} > [Viewed June 8, 2010]" > ,annotation={ > - Introduce rcu_dereference(). > + Introduce rcu\_dereference(). > } > } > > @@ -1122,7 +1122,7 @@ Oregon Health and Sciences University" > \url{http://lkml.org/lkml/2004/8/30/87} > [Viewed February 17, 2005]" > ,annotation={ > - Uses active code in rcu_read_lock() and rcu_read_unlock() to > + Uses active code in rcu\_read\_lock() and rcu\_read\_unlock() to > make RCU happen, allowing RCU to function on CPUs that do not > receive a scheduling-clock interrupt. > } > @@ -1134,7 +1134,7 @@ Oregon Health and Sciences University" > ,month="October" > ,year="2004" > ,note="Available: > -\url{http://www.cs.toronto.edu/~tomhart/masters_thesis.html} > +\url{http://www.cs.toronto.edu/~tomhart/masters\_thesis.html} > [Viewed October 15, 2004]" > ,annotation={ > Proposes comparing RCU to lock-free methods for the Linux kernel. > @@ -1150,7 +1150,7 @@ Oregon Health and Sciences University" > \url{http://marc.theaimsgroup.com/?t=109395731700004&r=1&w=2} > [Viewed October 18, 2004]" > ,annotation={ > - Srivatsa's RCU patch for tcp_ehash lookup. > + Srivatsa's RCU patch for tcp\_ehash lookup. > } > } > > @@ -1182,14 +1182,14 @@ Oregon Health and Sciences University" > > @unpublished{PaulEMcKenney2004rcu:assign:pointer > ,Author="Paul E. McKenney" > -,Title="{[PATCH 1/3] RCU: \url{rcu_assign_pointer()} removal of memory barriers}" > +,Title="{[PATCH 1/3] RCU: \url{rcu\_assign\_pointer()} removal of memory barriers}" > ,month="October" > ,year="2004" > ,note="Available: > \url{http://lkml.org/lkml/2004/10/23/241} > [Viewed June 8, 2010]" > ,annotation={ > - Introduce rcu_assign_pointer(). > + Introduce rcu\_assign\_pointer(). > } > } > > @@ -1283,7 +1283,7 @@ Data Structures" > > @unpublished{JonCorbet2005DeprecateSyncKernel > ,Author="Jonathan Corbet" > -,Title="API change: synchronize_kernel() deprecated" > +,Title="API change: synchronize\_kernel() deprecated" > ,month="May" > ,day="3" > ,year="2005" > @@ -1291,8 +1291,8 @@ Data Structures" > \url{http://lwn.net/Articles/134484/} > [Viewed May 3, 2005]" > ,annotation={ > - Jon Corbet describes deprecation of synchronize_kernel() > - in favor of synchronize_rcu() and synchronize_sched(). > + Jon Corbet describes deprecation of synchronize\_kernel() > + in favor of synchronize\_rcu() and synchronize\_sched(). > } > } > > @@ -1306,7 +1306,7 @@ Data Structures" > [Viewed May 13, 2005]" > ,annotation={ > First publication of working lock-based deferred free patches > - for the CONFIG_PREEMPT_RT environment. > + for the CONFIG\_PREEMPT\_RT environment. > } > } > > @@ -1511,7 +1511,7 @@ Canis Rufus and Zoicon5 and Anome and Hal Eisen" > ,Year="2006" > ,pages="v2 249-254" > ,note="Available: > -\url{http://www.linuxsymposium.org/2006/view_abstract.php?content_key=184} > +\url{http://www.linuxsymposium.org/2006/view\_abstract.php?content\_key=184} > [Viewed January 11, 2009]" > ,annotation={ > Uses RCU-protected radix tree for a lockless page cache. > @@ -1606,8 +1606,8 @@ Revised: > > @unpublished{JensAxboe2006SlowSRCU > ,Author="Jens Axboe" > -,Title="Re: [patch] cpufreq: mark \url{cpufreq_tsc()} as > -\url{core_initcall_sync}" > +,Title="Re: [patch] cpufreq: mark \url{cpufreq\_tsc()} as > +\url{core\_initcall\_sync}" > ,month="November" > ,year="2006" > ,day=17 > @@ -1701,7 +1701,7 @@ Revised: > } > } > > -# CoreyMinyard2007list_splice_rcu > +% CoreyMinyard2007list_splice_rcu > @unpublished{CoreyMinyard2007list:splice:rcu > ,Author="Corey Minyard and Paul E. McKenney" > ,Title="{[PATCH]} add an {RCU} version of list splicing" > @@ -1712,7 +1712,7 @@ Revised: > \url{http://lkml.org/lkml/2007/1/3/112} > [Viewed May 28, 2007]" > ,annotation={ > - Patch for list_splice_rcu(). > + Patch for list\_splice\_rcu(). > } > } > > @@ -1726,7 +1726,7 @@ Revised: > \url{http://lwn.net/Articles/217484/} > [Viewed November 22, 2007]" > ,annotation={ > - LWN article introducing the rcu_barrier() primitive. > + LWN article introducing the rcu\_barrier() primitive. > } > } > > @@ -1925,7 +1925,7 @@ Revised: > } > } > > -# MathieuDesnoyers2007call_rcu_schedNeeded > +% MathieuDesnoyers2007call_rcu_schedNeeded > @unpublished{MathieuDesnoyers2007call:rcu:schedNeeded > ,Author="Mathieu Desnoyers" > ,Title="Re: [patch 1/2] {Linux} Kernel Markers - Support Multiple Probes" > @@ -1936,18 +1936,18 @@ Revised: > \url{http://lkml.org/lkml/2007/12/20/244} > [Viewed March 27, 2008]" > ,annotation={ > - Request for call_rcu_sched() and rcu_barrier_sched(). > + Request for call\_rcu\_sched() and rcu\_barrier\_sched(). > } > } > > > -######################################################################## > -# > -# "What is RCU?" LWN series. > -# > -# http://lwn.net/Articles/262464/ (What is RCU, Fundamentally?) > -# http://lwn.net/Articles/263130/ (What is RCU's Usage?) > -# http://lwn.net/Articles/264090/ (What is RCU's API?) > +%####################################################################### > +% > +% "What is RCU?" LWN series. > +% > +% http://lwn.net/Articles/262464/ (What is RCU, Fundamentally?) > +% http://lwn.net/Articles/263130/ (What is RCU's Usage?) > +% http://lwn.net/Articles/264090/ (What is RCU's API?) > > @unpublished{PaulEMcKenney2007WhatIsRCUFundamentally > ,Author="Paul E. McKenney and Jonathan Walpole" > @@ -2000,10 +2000,10 @@ Revised: > } > } > > -# > -# "What is RCU?" LWN series. > -# > -######################################################################## > +% > +% "What is RCU?" LWN series. > +% > +%####################################################################### > > > @unpublished{SteveRostedt2008dyntickRCUpatch > @@ -2093,7 +2093,7 @@ lot of {Linux} into your technology!!!" > ,annotation={ > Updated RCU classic algorithm. Introduced multi-tailed list > for RCU callbacks and also pulling common code into > - __call_rcu(). > + \_\_call\_rcu(). > } > } > > @@ -2145,7 +2145,7 @@ lot of {Linux} into your technology!!!" > } > } > > -# Was PaulEMcKenney2011cyclicRCU > +% Was PaulEMcKenney2011cyclicRCU > @techreport{PaulEMcKenney2008cyclicRCU > ,author="Paul E. McKenney" > ,title="Efficient Support of Consistent Cyclic Search With Read-Copy Update" > @@ -2353,7 +2353,7 @@ lot of {Linux} into your technology!!!" > \url{http://lkml.org/lkml/2009/10/18/129} > [Viewed December 29, 2009]" > ,annotation={ > - Mathieu proposed defer_rcu() with fixed-size per-thread pool > + Mathieu proposed defer\_rcu() with fixed-size per-thread pool > of RCU callbacks. > } > } > @@ -2413,8 +2413,8 @@ lot of {Linux} into your technology!!!" > \url{http://www.rdrop.com/users/paulmck/RCU/SimplicityThruOptimization.2010.01.21f.pdf} > [Viewed October 10, 2010]" > ,annotation={ > - TREE_PREEMPT_RCU optimizations greatly simplified the old > - PREEMPT_RCU implementation. > + TREE\_PREEMPT\_RCU optimizations greatly simplified the old > + PREEMPT\_RCU implementation. > } > } > > @@ -2426,7 +2426,7 @@ lot of {Linux} into your technology!!!" > ,day="1" > ,note="\url{https://lwn.net/Articles/371986/}" > ,annotation={ > - CONFIG_PROVE_RCU, or at least an early version. > + CONFIG\_PROVE\_RCU, or at least an early version. > [Viewed June 4, 2010] > } > } > @@ -2454,7 +2454,7 @@ lot of {Linux} into your technology!!!" > \url{http://thread.gmane.org/gmane.linux.network/153338} > [Viewed June 9, 2014]" > ,annotation={ > - Use a pair of list_head structures to support RCU-protected > + Use a pair of list\_head structures to support RCU-protected > resizable hash tables. > } > } > @@ -2466,7 +2466,7 @@ lot of {Linux} into your technology!!!" > ,year="2010" > ,annotation={ > Data-race detector incorporating RCU. > - http://www.filesystems.org/docs/abhinav-thesis/abhinav_thesis.pdf > + \url{http://www.filesystems.org/docs/abhinav-thesis/abhinav_thesis.pdf} > } > } > > @@ -2528,7 +2528,7 @@ lot of {Linux} into your technology!!!" > nice about it is that it actually improves performance a lot even for > single-threaded loads (on an SMP kernel), because it gets rid of some > of the most expensive parts of path component lookup, which was the > - d_lock on every component lookup. So I'm seeing improvements of 30-50% > + d\_lock on every component lookup. So I'm seeing improvements of 30-50% > on some seriously pathname-lookup intensive loads." > } > } > @@ -2551,7 +2551,7 @@ lot of {Linux} into your technology!!!" > ,location = {Berkeley, CA} > ,pages = {1--6} > ,numpages = {6} > -,url = {http://www.usenix.org/event/hotpar11/tech/final_files/Howard.pdf} > +,url = {http://www.usenix.org/event/hotpar11/tech/final\_files/Howard.pdf} > ,publisher = {USENIX Association} > ,address = {Berkeley, CA, USA} > } > @@ -2581,7 +2581,7 @@ lot of {Linux} into your technology!!!" > ,year = {2011} > ,pages = {145--158} > ,numpages = {14} > -,url={http://www.usenix.org/event/atc11/tech/final_files/Triplett.pdf} > +,url={http://www.usenix.org/event/atc11/tech/final\_files/Triplett.pdf} > ,publisher = {The USENIX Association} > ,address = {Portland, OR USA} > } > @@ -2690,7 +2690,7 @@ lot of {Linux} into your technology!!!" > \url{http://www.rdrop.com/users/paulmck/RCU/RCUdynticks.2012.02.15b.pdf} > [Viewed March 1, 2012]" > ,annotation={ > - RCU_FAST_NO_HZ, round 2. > + RCU\_FAST\_NO\_HZ, round 2. > } > } > > @@ -2719,7 +2719,7 @@ lot of {Linux} into your technology!!!" > ,note="\url{http://lwn.net/Articles/508991/}" > ,annotation={ > A couple of simple specific compiler optimizations that motivate > - ACCESS_ONCE(). > + ACCESS\_ONCE(). > } > } > > @@ -2741,7 +2741,7 @@ lot of {Linux} into your technology!!!" > ,month="September" > ,day="17" > ,year="2012" > -,url=http://rdrop.com/users/paulmck/techreports/survey.2012.09.17a.pdf > +,url={http://rdrop.com/users/paulmck/techreports/survey.2012.09.17a.pdf} > ,note="Technical report paulmck.2012.09.17" > ,annotation={ > Overview of the first variant of no-CBs CPUs for RCU. > @@ -2807,6 +2807,6 @@ lot of {Linux} into your technology!!!" > ,year="2013" > ,note="\url{http://lwn.net/Articles/541037/}" > ,annotation={ > - Getting rid of TINY_PREEMPT_RCU. > + Getting rid of TINY\_PREEMPT\_RCU. > } > } > -- > 2.25.2 >