| /linux/kernel/rcu/ |
| H A D | tree.h | 41 struct rcu_node { struct 42 raw_spinlock_t __private lock; /* Root rcu_node's lock protects */ argument 50 /* In leaf rcu_node, each bit corresponds to */ argument 52 /* bit corresponds to a child rcu_node */ 86 /* rcu_node tree? */ argument 87 struct rcu_node *parent; argument 105 /* boosting is needed for this rcu_node */ argument 107 /* queued on this rcu_node structure that */ 120 /* boosting for this rcu_node structure. */ argument 123 unsigned long n_boosts; /* Number of boosts for this rcu_node structur argument 54 rcu_gp_init_maskrcu_node global() argument 55 qsmaskinitrcu_node global() argument 59 qsmaskinitnextrcu_node global() argument 60 expmaskrcu_node global() argument 142 exp_poll_wqrcu_node global() argument [all...] |
| H A D | tree.c | 111 /* Dump rcu_node combining tree at boot to verify correct setup. */ 119 /* Control rcu_node-tree auto-balancing at boot time. */ 159 static void rcu_report_qs_rnp(unsigned long mask, struct rcu_node *rnp, 164 static void check_cb_ovld_locked(struct rcu_data *rdp, struct rcu_node *rnp); 168 static void rcu_cleanup_dead_rnp(struct rcu_node *rnp_leaf); 169 static void rcu_init_new_rnp(struct rcu_node *rnp_leaf); 217 * permit this function to be invoked without holding the root rcu_node 542 static struct rcu_node *rcu_get_root(void) in rcu_get_root() 684 // handler and that the rcu_node lock is an irq-disabled lock in __rcu_irq_enter_check_tick() 798 * of the rcu_node [all...] |
| H A D | tree_nocb.h | 182 static struct swait_queue_head *rcu_nocb_gp_get(struct rcu_node *rnp) in rcu_nocb_gp_get() 187 static void rcu_init_one_nocb(struct rcu_node *rnp) in rcu_init_one_nocb() 641 struct rcu_node *rnp; in nocb_gp_sleep() 860 struct rcu_node *rnp = rdp->mynode; in rcu_nocb_gp_kthread() 1503 struct rcu_node *rnp = rdp->mynode; in rcu_bind_current_to_nocb() 1625 static struct swait_queue_head *rcu_nocb_gp_get(struct rcu_node *rnp) in rcu_nocb_lock() 1630 static void rcu_init_one_nocb(struct rcu_node *rnp) in rcu_nocb_unlock()
|
| /linux/Documentation/RCU/Design/Data-Structures/ |
| H A D | Data-Structures.rst | 28 of ``rcu_node`` structures. Each leaf node of the ``rcu_node`` tree has up 34 which results in a three-level ``rcu_node`` tree. 36 at boot time, resulting in an ``rcu_node`` tree with only a single node. 43 and other events are recorded by the leaf-level ``rcu_node`` 46 grace periods are completed at the tree's root ``rcu_node`` 66 | ``rcu_node`` structures than further up the tree. Therefore, if the | 67 | leaf ``rcu_node`` structures have fanout of 64, the contention on | 70 | for the leaves of the ``rcu_node`` tree. | 74 | ``rcu_node`` structures must also be reduced. Such reduction can be | 77 | on the non-leaf ``rcu_node`` structures, you may use the | [all …]
|
| /linux/Documentation/RCU/Design/Memory-Ordering/ |
| H A D | Tree-RCU-Memory-Ordering.rst | 50 critical section for the ``rcu_node`` structure's 62 Therefore, for any given ``rcu_node`` structure, any access 71 on different ``rcu_node`` structures. 118 | But the chain of rcu_node-structure lock acquisitions guarantees | 166 | by the CPU's leaf ``rcu_node`` structure's ``->lock`` as described | 194 the ``rcu_node`` structure's ``->lock`` field, so much so that it is 206 5 struct rcu_node *rnp; 245 .. kernel-figure:: rcu_node-lock.svg 247 The box represents the ``rcu_node`` structure's ``->lock`` critical 305 ``rcu_node`` structure's ``->lock``. In all cases, there is full [all …]
|
| /linux/Documentation/RCU/Design/Expedited-Grace-Periods/ |
| H A D | Expedited-Grace-Periods.rst | 156 the ``rcu_node`` structure's ``->expmaskinitnext`` field. The 157 ``rcu_node`` structure's ``->expmaskinit`` field tracks the 162 that is, when the ``rcu_node`` structure's ``->expmaskinitnext`` 164 period, which triggers an update of each ``rcu_node`` structure's 166 #. Each ``rcu_node`` structure's ``->expmaskinit`` field is used to 171 #. Any CPU that goes offline will clear its bit in its leaf ``rcu_node`` 215 | bitmasks in the ``rcu_node`` tree. | 289 the expedited grace period is to use the ``rcu_node`` combining tree, as 291 corresponding to a given grace period arriving at a given ``rcu_node`` 298 ``->exp_lock`` field in the ``rcu_node`` structure synchronizes access [all …]
|
| /linux/drivers/scsi/cxgbi/ |
| H A D | libcxgbi.h | 479 struct list_head rcu_node; member
|
| H A D | libcxgbi.c | 157 list_add_tail_rcu(&cdev->rcu_node, &cdev_rcu_list); in cxgbi_device_register() 177 list_del_rcu(&cdev->rcu_node); in cxgbi_device_unregister() 267 list_for_each_entry_rcu(cdev, &cdev_rcu_list, rcu_node) { in cxgbi_device_find_by_netdev_rcu()
|
| /linux/include/linux/ |
| H A D | sched.h | 77 struct rcu_node; 934 struct rcu_node *rcu_blocked_node;
|
| /linux/Documentation/admin-guide/ |
| H A D | kernel-parameters.txt | 5689 Dump the structure of the rcu_node combining tree 5705 the rcu_node combining tree. 5804 Disable autobalancing of the rcu_node combining 5811 leaf rcu_node structure. Useful for very 5858 rcu_node tree with an eye towards determining 7329 form, that is, with an rcu_node tree:
|