lkml.org 
[lkml]   [2013]   [Apr]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[PATCH tip/core/rcu 0/8] RCU callback-numbering simplifications for 3.11
Hello!

This series takes advantage of callback numbering to simplify RCU's
grace-period machinery, in some cases also reducing the number of
lock acquisitions (though the resulting change in performance is not
perceptible). The individual patches are as follows:

1. Move code to make way for the code-combining in later patches.
This commit makes no changes, just moves code.

2. Make __note_new_gpnum() also check for the ends of prior grace
periods, thus eliminating the earlier possibility of a given
CPU becoming aware of the start of the next grace period before
becoming aware of the end of the previous grace period. Yes,
the code did handle this correctly, but now it doesn't need to.
More important, now I don't need to think about how it handles
this correctly.

3. Rename note_new_gpnum() to note_gp_changes() in preparation for
later merge of rcu_process_gp_end() into this function.

4. Change calls to rcu_process_gp_end() to instead call
note_gp_changes(), and also remove the now-used rcu_process_gp_end().

5. Remove duplicate code by merging __rcu_process_gp_end() into
__note_gp_changes().

6. Eliminate now-redundant call to check_for_new_grace_period(). This
leaves only a single caller, so inline check_for_new_grace_period().

7. Given that rcu_start_gp_per_cpu() is a trivial wrapper function
with only one caller, inline it into its sole remaining call site.

8. Eliminate now-redundant call to note_gp_changes().

Thanx, Paul

b/kernel/rcutree.c | 262 ++++++++++++++--------------------------------
b/kernel/rcutree_plugin.h | 2
2 files changed, 85 insertions(+), 179 deletions(-)



\
 
 \ /
  Last update: 2013-04-13 02:41    [W:0.060 / U:0.900 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site