Merge branches 'bitmaprange.2021.05.10c', 'doc.2021.05.10c', 'fixes.2021.05.13a'...
authorPaul E. McKenney <paulmck@kernel.org>
Tue, 18 May 2021 17:56:19 +0000 (10:56 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Tue, 18 May 2021 17:56:19 +0000 (10:56 -0700)
bitmaprange.2021.05.10c: Allow "all" for bitmap ranges.
doc.2021.05.10c: Documentation updates.
fixes.2021.05.13a: Miscellaneous fixes.
kvfree_rcu.2021.05.10c: kvfree_rcu() updates.
mmdumpobj.2021.05.10c: mem_dump_obj() updates.
nocb.2021.05.12a: RCU NOCB CPU updates, including limited deoffloading.
srcu.2021.05.12a: SRCU updates.
tasks.2021.05.18a: Tasks-RCU updates.
torture.2021.05.10c: Torture-test updates.

1  2  3  4  5  6  7  8  9 
kernel/rcu/rcu.h
kernel/rcu/srcutree.c
kernel/rcu/tasks.h
kernel/rcu/tree.c
kernel/rcu/tree.h
kernel/rcu/tree_plugin.h
kernel/rcu/tree_stall.h
kernel/rcu/update.c

Simple merge
Simple merge
Simple merge
@@@@@@@@@@ -3251,9 -3251,9 -3233,9 -3264,28 -3251,9 -3251,9 -3251,9 -3252,9 -3251,9 +3247,28 @@@@@@@@@@ put_cached_bnode(struct kfree_rcu_cpu *
                        return false;
         
                llist_add((struct llist_node *) bnode, &krcp->bkvcache);
--- -----       krcp->nr_bkv_objs++;
+++ +++++       WRITE_ONCE(krcp->nr_bkv_objs, krcp->nr_bkv_objs + 1);
                return true;
+++ +++++}
+++ +++++
+++ +++++static int
+++ +++++drain_page_cache(struct kfree_rcu_cpu *krcp)
+++ +++++{
+++ +++++       unsigned long flags;
+++ +++++       struct llist_node *page_list, *pos, *n;
+++ +++++       int freed = 0;
  +   +  
+++ +++++       raw_spin_lock_irqsave(&krcp->lock, flags);
+++ +++++       page_list = llist_del_all(&krcp->bkvcache);
+++ +++++       WRITE_ONCE(krcp->nr_bkv_objs, 0);
+++ +++++       raw_spin_unlock_irqrestore(&krcp->lock, flags);
++  +++++
+++ +++++       llist_for_each_safe(pos, n, page_list) {
+++ +++++               free_page((unsigned long)pos);
+++ +++++               freed++;
+++ +++++       }
+++ ++ ++
+++ +++++       return freed;
         }
         
         /*
Simple merge
Simple merge
Simple merge
Simple merge