Skip to content

Commit

Permalink
rcu: Do tiny cleanups in rcutiny
Browse files Browse the repository at this point in the history
No change in functionality - just straighten out a few small
stylistic details.

Cc: Paul E. McKenney <[email protected]>
Cc: David Howells <[email protected]>
Cc: Josh Triplett <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
LKML-Reference: <12565226351355-git-send-email->
Signed-off-by: Ingo Molnar <[email protected]>
  • Loading branch information
Ingo Molnar committed Oct 26, 2009
1 parent cf886c4 commit 4ce5b90
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 30 deletions.
6 changes: 2 additions & 4 deletions include/linux/rcutiny.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,8 @@
* Author: Paul E. McKenney <[email protected]>
*
* For detailed explanation of Read-Copy Update mechanism see -
* Documentation/RCU
* Documentation/RCU
*/

#ifndef __LINUX_TINY_H
#define __LINUX_TINY_H

Expand Down Expand Up @@ -70,8 +69,7 @@ static inline void synchronize_rcu_bh_expedited(void)
}

struct notifier_block;
extern int rcu_cpu_notify(struct notifier_block *self,
unsigned long action, void *hcpu);
extern int rcu_cpu_notify(struct notifier_block *self, unsigned long action, void *hcpu);

#ifdef CONFIG_NO_HZ

Expand Down
49 changes: 23 additions & 26 deletions kernel/rcutiny.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,22 +20,21 @@
* Author: Paul E. McKenney <[email protected]>
*
* For detailed explanation of Read-Copy Update mechanism see -
* Documentation/RCU
* Documentation/RCU
*/

#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/rcupdate.h>
#include <linux/interrupt.h>
#include <linux/sched.h>
#include <linux/module.h>
#include <linux/completion.h>
#include <linux/moduleparam.h>
#include <linux/completion.h>
#include <linux/interrupt.h>
#include <linux/notifier.h>
#include <linux/cpu.h>
#include <linux/rcupdate.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/sched.h>
#include <linux/types.h>
#include <linux/init.h>
#include <linux/time.h>
#include <linux/cpu.h>

/* Global control variables for rcupdate callback mechanism. */
struct rcu_ctrlblk {
Expand All @@ -46,14 +45,13 @@ struct rcu_ctrlblk {

/* Definition for rcupdate control block. */
static struct rcu_ctrlblk rcu_ctrlblk = {
.rcucblist = NULL,
.donetail = &rcu_ctrlblk.rcucblist,
.curtail = &rcu_ctrlblk.rcucblist,
.donetail = &rcu_ctrlblk.rcucblist,
.curtail = &rcu_ctrlblk.rcucblist,
};

static struct rcu_ctrlblk rcu_bh_ctrlblk = {
.rcucblist = NULL,
.donetail = &rcu_bh_ctrlblk.rcucblist,
.curtail = &rcu_bh_ctrlblk.rcucblist,
.donetail = &rcu_bh_ctrlblk.rcucblist,
.curtail = &rcu_bh_ctrlblk.rcucblist,
};

#ifdef CONFIG_NO_HZ
Expand Down Expand Up @@ -84,8 +82,8 @@ void rcu_exit_nohz(void)

/*
* Helper function for rcu_qsctr_inc() and rcu_bh_qsctr_inc().
* Also disable irqs to avoid confusion due to interrupt handlers invoking
* call_rcu().
* Also disable irqs to avoid confusion due to interrupt handlers
* invoking call_rcu().
*/
static int rcu_qsctr_help(struct rcu_ctrlblk *rcp)
{
Expand All @@ -99,6 +97,7 @@ static int rcu_qsctr_help(struct rcu_ctrlblk *rcp)
return 1;
}
local_irq_restore(flags);

return 0;
}

Expand Down Expand Up @@ -143,8 +142,8 @@ void rcu_check_callbacks(int cpu, int user)
*/
static void __rcu_process_callbacks(struct rcu_ctrlblk *rcp)
{
unsigned long flags;
struct rcu_head *next, *list;
unsigned long flags;

/* If no RCU callbacks ready to invoke, just return. */
if (&rcp->rcucblist == rcp->donetail)
Expand Down Expand Up @@ -182,8 +181,7 @@ static void rcu_process_callbacks(struct softirq_action *unused)
* Null function to handle CPU being onlined. Longer term, we want to
* make TINY_RCU avoid using rcupdate.c, but later...
*/
int rcu_cpu_notify(struct notifier_block *self,
unsigned long action, void *hcpu)
int rcu_cpu_notify(struct notifier_block *self, unsigned long action, void *hcpu)
{
return NOTIFY_OK;
}
Expand Down Expand Up @@ -223,6 +221,7 @@ static void __call_rcu(struct rcu_head *head,

head->func = func;
head->next = NULL;

local_irq_save(flags);
*rcp->curtail = head;
rcp->curtail = &head->next;
Expand All @@ -234,8 +233,7 @@ static void __call_rcu(struct rcu_head *head,
* period. But since we have but one CPU, that would be after any
* quiescent state.
*/
void call_rcu(struct rcu_head *head,
void (*func)(struct rcu_head *rcu))
void call_rcu(struct rcu_head *head, void (*func)(struct rcu_head *rcu))
{
__call_rcu(head, func, &rcu_ctrlblk);
}
Expand All @@ -245,8 +243,7 @@ EXPORT_SYMBOL_GPL(call_rcu);
* Post an RCU bottom-half callback to be invoked after any subsequent
* quiescent state.
*/
void call_rcu_bh(struct rcu_head *head,
void (*func)(struct rcu_head *rcu))
void call_rcu_bh(struct rcu_head *head, void (*func)(struct rcu_head *rcu))
{
__call_rcu(head, func, &rcu_bh_ctrlblk);
}
Expand Down

0 comments on commit 4ce5b90

Please sign in to comment.