diff options
| author | David S. Miller <davem@davemloft.net> | 2010-02-28 22:23:06 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2010-02-28 22:23:06 -0500 |
| commit | 47871889c601d8199c51a4086f77eebd77c29b0b (patch) | |
| tree | 40cdcac3bff0ee40cc33dcca61d0577cdf965f77 /kernel/notifier.c | |
| parent | c16cc0b464b8876cfd57ce1c1dbcb6f9a6a0bce3 (diff) | |
| parent | 30ff056c42c665b9ea535d8515890857ae382540 (diff) | |
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Conflicts:
drivers/firmware/iscsi_ibft.c
Diffstat (limited to 'kernel/notifier.c')
| -rw-r--r-- | kernel/notifier.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/notifier.c b/kernel/notifier.c index acd24e7643eb..2488ba7eb568 100644 --- a/kernel/notifier.c +++ b/kernel/notifier.c | |||
| @@ -78,10 +78,10 @@ static int __kprobes notifier_call_chain(struct notifier_block **nl, | |||
| 78 | int ret = NOTIFY_DONE; | 78 | int ret = NOTIFY_DONE; |
| 79 | struct notifier_block *nb, *next_nb; | 79 | struct notifier_block *nb, *next_nb; |
| 80 | 80 | ||
| 81 | nb = rcu_dereference(*nl); | 81 | nb = rcu_dereference_raw(*nl); |
| 82 | 82 | ||
| 83 | while (nb && nr_to_call) { | 83 | while (nb && nr_to_call) { |
| 84 | next_nb = rcu_dereference(nb->next); | 84 | next_nb = rcu_dereference_raw(nb->next); |
| 85 | 85 | ||
| 86 | #ifdef CONFIG_DEBUG_NOTIFIERS | 86 | #ifdef CONFIG_DEBUG_NOTIFIERS |
| 87 | if (unlikely(!func_ptr_is_kernel_text(nb->notifier_call))) { | 87 | if (unlikely(!func_ptr_is_kernel_text(nb->notifier_call))) { |
| @@ -309,7 +309,7 @@ int __blocking_notifier_call_chain(struct blocking_notifier_head *nh, | |||
| 309 | * racy then it does not matter what the result of the test | 309 | * racy then it does not matter what the result of the test |
| 310 | * is, we re-check the list after having taken the lock anyway: | 310 | * is, we re-check the list after having taken the lock anyway: |
| 311 | */ | 311 | */ |
| 312 | if (rcu_dereference(nh->head)) { | 312 | if (rcu_dereference_raw(nh->head)) { |
| 313 | down_read(&nh->rwsem); | 313 | down_read(&nh->rwsem); |
| 314 | ret = notifier_call_chain(&nh->head, val, v, nr_to_call, | 314 | ret = notifier_call_chain(&nh->head, val, v, nr_to_call, |
| 315 | nr_calls); | 315 | nr_calls); |
