Lines Matching full:hierarchy
21 * The timer migration mechanism is built on a hierarchy of groups. The
49 * hierarchy up to the point where it is assigned the migrator role or if
76 * propagated up the hierarchy so hand over from other leaves can happen at
77 * all hierarchy levels w/o doing a search.
80 * duties up to the top level of the hierarchy (LVL2 in the example). It
90 * just won't participate in the hierarchy management anymore. Destroying
137 * walk the hierarchy.
152 * has to walk the hierarchy. Both CPUs (CPU0 and CPU1) now walk the
153 * hierarchy to perform the needed update from their point of view. The
168 * step 2) through the hierarchy to GRP1:0 before CPU0 (step 1) did. The
334 * After expiring timers of a remote CPU, a walk through the hierarchy and
385 * been processed. So it is required to walk the hierarchy from CPU0's point
412 * The hierarchy walk in step 3 can be skipped if the migrator notices that a
414 * of the group as migrator and any needed updates within the hierarchy.
479 * struct tmigr_walk - data required for walking the hierarchy
484 * hierarchy is completely idle. When CPU itself was the
490 * new top level of the hierarchy between the 'top level
506 * the hierarchy walk is !idle in the timer migration
507 * hierarchy. When the CPU is idle and the whole hierarchy is
688 * tmigr_cpu_activate() - set this CPU active in timer migration hierarchy
712 * the) hierarchy, but only when hierarchy is completely idle.
763 * Walking the hierarchy is required in any case when a in tmigr_update_events()
771 * the hierarchy by the return: in tmigr_update_events()
781 * However if there is no parent, ie: the hierarchy has only a in tmigr_update_events()
815 * hierarchy even if there is a parent group. in tmigr_update_events()
819 * is not active, walking the hierarchy is required to not miss in tmigr_update_events()
878 * returned, if an active CPU will handle all the timer migration hierarchy
926 * updated the event takes care when hierarchy is completely in tmigr_handle_remote_cpu()
952 * the hierarchy and goes back to idle. in tmigr_handle_remote_cpu()
958 * several (unnecessary) locks during walking the hierarchy for updating in tmigr_handle_remote_cpu()
966 * When the CPU went offline in the meantime, no hierarchy walk has to in tmigr_handle_remote_cpu()
968 * already done during marking the CPU offline in the hierarchy. in tmigr_handle_remote_cpu()
971 * also of the timers in the hierarchy. in tmigr_handle_remote_cpu()
1119 * hierarchy walk is not active, proceed the walk to reach the top level in tmigr_requires_handle_remote_up()
1173 * If the CPU is active, walk the hierarchy to check whether a remote in tmigr_requires_handle_remote()
1205 * tmigr_cpu_new_timer() - enqueue next global timer into hierarchy (idle tmc)
1209 * hierarchy. tick_nohz_get_sleep_length() calls tick_nohz_next_event()
1211 * holds the first timer, when the timer migration hierarchy is
1347 * from the hierarchy if this CPU is the top level migrator or the hierarchy is
1431 * last active CPU in the hierarchy is offlining. With this, it is ensured that
1549 * hierarchy. Rely on the topology sibling mask would be a in tmigr_get_group()
1567 /* Setup successful. Add it to the hierarchy */ in tmigr_get_group()
1667 * available, not all calculated hierarchy levels are required. in tmigr_setup_groups()
1805 * Calculate the required hierarchy levels. Unfortunately there is no in tmigr_init()
1816 /* Calc the hierarchy levels required to hold the CPUs of a node */ in tmigr_init()
1828 * level(s) of the hierarchy contains groups which handle all CPU groups in tmigr_init()
1842 pr_info("Timer migration: %d hierarchy levels; %d children per group;" in tmigr_init()