| /kernel/linux/linux-5.10/kernel/cgroup/ |
| D | freezer.c | 12 * Propagate the cgroup frozen state upwards by the cgroup tree. 14 static void cgroup_propagate_frozen(struct cgroup *cgrp, bool frozen) in cgroup_propagate_frozen() argument 19 * If the new state is frozen, some freezing ancestor cgroups may change in cgroup_propagate_frozen() 20 * their state too, depending on if all their descendants are frozen. in cgroup_propagate_frozen() 22 * Otherwise, all ancestor cgroups are forced into the non-frozen state. in cgroup_propagate_frozen() 25 if (frozen) { in cgroup_propagate_frozen() 49 * Revisit the cgroup frozen state. 50 * Checks if the cgroup is really frozen and perform all state transitions. 54 bool frozen; in cgroup_update_frozen() local 59 * If the cgroup has to be frozen (CGRP_FREEZE bit set), in cgroup_update_frozen() [all …]
|
| D | legacy_freezer.c | 28 * set if "FROZEN" is written to freezer.state cgroupfs file, and cleared 37 CGROUP_FROZEN = (1 << 3), /* this and its descendants frozen */ 79 return "FROZEN"; in freezer_state_strs() 167 * For simplicity, when migrating any task to a FROZEN cgroup, we in freezer_attach() 172 * current state before executing the following - !frozen tasks may in freezer_attach() 173 * be visible in a FROZEN cgroup and frozen tasks in a THAWED one. in freezer_attach() 182 /* clear FROZEN and propagate upwards */ in freezer_attach() 232 * Once FREEZING is initiated, transition to FROZEN is lazily updated by 233 * calling this function. If the current state is FREEZING but not FROZEN, 235 * cgroups finished freezing and, if so, sets FROZEN. [all …]
|
| /kernel/linux/linux-6.6/kernel/cgroup/ |
| D | freezer.c | 12 * Propagate the cgroup frozen state upwards by the cgroup tree. 14 static void cgroup_propagate_frozen(struct cgroup *cgrp, bool frozen) in cgroup_propagate_frozen() argument 19 * If the new state is frozen, some freezing ancestor cgroups may change in cgroup_propagate_frozen() 20 * their state too, depending on if all their descendants are frozen. in cgroup_propagate_frozen() 22 * Otherwise, all ancestor cgroups are forced into the non-frozen state. in cgroup_propagate_frozen() 25 if (frozen) { in cgroup_propagate_frozen() 49 * Revisit the cgroup frozen state. 50 * Checks if the cgroup is really frozen and perform all state transitions. 54 bool frozen; in cgroup_update_frozen() local 59 * If the cgroup has to be frozen (CGRP_FREEZE bit set), in cgroup_update_frozen() [all …]
|
| D | legacy_freezer.c | 29 * set if "FROZEN" is written to freezer.state cgroupfs file, and cleared 38 CGROUP_FROZEN = (1 << 3), /* this and its descendants frozen */ 80 return "FROZEN"; in freezer_state_strs() 172 * For simplicity, when migrating any task to a FROZEN cgroup, we in freezer_attach() 177 * current state before executing the following - !frozen tasks may in freezer_attach() 178 * be visible in a FROZEN cgroup and frozen tasks in a THAWED one. in freezer_attach() 186 /* clear FROZEN and propagate upwards */ in freezer_attach() 237 * Once FREEZING is initiated, transition to FROZEN is lazily updated by 238 * calling this function. If the current state is FREEZING but not FROZEN, 240 * cgroups finished freezing and, if so, sets FROZEN. [all …]
|
| /kernel/linux/linux-6.6/Documentation/admin-guide/cgroup-v1/ |
| D | freezer-subsystem.rst | 53 being frozen. This allows the bash example above and gdb to run as 67 "FREEZING" or "FROZEN". This is the combined self and parent-states. 68 If any is freezing, the cgroup is freezing (FREEZING or FROZEN). 70 FREEZING cgroup transitions into FROZEN state when all tasks 71 belonging to the cgroup and its descendants become frozen. Note that 72 a cgroup reverts to FREEZING from FROZEN after a new task is added 74 frozen. 77 allowed - "FROZEN" and "THAWED". If FROZEN is written, the cgroup, 90 This value is 1 iff the last write to freezer.state was "FROZEN". 95 frozen; otherwise, 1. [all …]
|
| /kernel/linux/linux-5.10/Documentation/admin-guide/cgroup-v1/ |
| D | freezer-subsystem.rst | 53 being frozen. This allows the bash example above and gdb to run as 67 "FREEZING" or "FROZEN". This is the combined self and parent-states. 68 If any is freezing, the cgroup is freezing (FREEZING or FROZEN). 70 FREEZING cgroup transitions into FROZEN state when all tasks 71 belonging to the cgroup and its descendants become frozen. Note that 72 a cgroup reverts to FREEZING from FROZEN after a new task is added 74 frozen. 77 allowed - "FROZEN" and "THAWED". If FROZEN is written, the cgroup, 90 This value is 1 iff the last write to freezer.state was "FROZEN". 95 frozen; otherwise, 1. [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/cgroup/ |
| D | test_freezer.c | 25 * Check if the cgroup is frozen by looking at the cgroup.events::frozen value. 27 static int cg_check_frozen(const char *cgroup, bool frozen) in cg_check_frozen() argument 29 if (frozen) { in cg_check_frozen() 30 if (cg_read_strstr(cgroup, "cgroup.events", "frozen 1") != 0) { in cg_check_frozen() 31 debug("Cgroup %s isn't frozen\n", cgroup); in cg_check_frozen() 36 * Check the cgroup.events::frozen value. in cg_check_frozen() 38 if (cg_read_strstr(cgroup, "cgroup.events", "frozen 0") != 0) { in cg_check_frozen() 39 debug("Cgroup %s is frozen\n", cgroup); in cg_check_frozen() 56 * Attach a task to the given cgroup and wait for a cgroup frozen event. 60 bool frozen) in cg_enter_and_wait_for_frozen() argument [all …]
|
| /kernel/linux/linux-5.10/tools/testing/selftests/cgroup/ |
| D | test_freezer.c | 27 * Check if the cgroup is frozen by looking at the cgroup.events::frozen value. 29 static int cg_check_frozen(const char *cgroup, bool frozen) in cg_check_frozen() argument 31 if (frozen) { in cg_check_frozen() 32 if (cg_read_strstr(cgroup, "cgroup.events", "frozen 1") != 0) { in cg_check_frozen() 33 debug("Cgroup %s isn't frozen\n", cgroup); in cg_check_frozen() 38 * Check the cgroup.events::frozen value. in cg_check_frozen() 40 if (cg_read_strstr(cgroup, "cgroup.events", "frozen 0") != 0) { in cg_check_frozen() 41 debug("Cgroup %s is frozen\n", cgroup); in cg_check_frozen() 113 * Attach a task to the given cgroup and wait for a cgroup frozen event. 117 bool frozen) in cg_enter_and_wait_for_frozen() argument [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | freezer.h | 23 * Check if a process has been frozen 25 static inline bool frozen(struct task_struct *p) in frozen() function 87 * complete. However, we don't want kernel threads to be frozen in unexpected 91 * (the child) does a little before exec/exit and it can't be frozen before 100 * target frozen state is reached. IOW, the current task will be 101 * considered frozen enough by freezers. 103 * The caller shouldn't do anything which isn't allowed for a frozen task 140 * freezer_should_skip - whether to skip a task when determining frozen 145 * test whether a task should be skipped when determining the target frozen 147 * frozen enough. [all …]
|
| /kernel/linux/linux-5.10/kernel/ |
| D | freezer.c | 25 /* protects freezing and frozen transitions */ 29 * freezing_slow_path - slow path for testing whether a task needs to be frozen 33 * and tests whether @p needs to enter and stay in frozen state. Can be 55 /* Refrigerator is place where frozen processes are stored :-). */ 113 * %false, if @p is not freezing or already frozen; %true, otherwise 132 if (!freezing(p) || frozen(p)) { in freeze_task() 151 if (frozen(p)) in __thaw_task() 167 * freezer notices that we aren't frozen yet or the freezing in set_freezable()
|
| /kernel/linux/linux-6.6/kernel/ |
| D | freezer.c | 26 /* protects freezing and frozen transitions */ 30 * freezing_slow_path - slow path for testing whether a task needs to be frozen 34 * and tests whether @p needs to enter and stay in frozen state. Can be 56 bool frozen(struct task_struct *p) in frozen() function 61 /* Refrigerator is place where frozen processes are stored :-). */ 151 * %false, if @p is not freezing or already frozen; %true, otherwise 158 if (!freezing(p) || frozen(p) || __freeze_task(p)) { in freeze_task() 226 * freezer notices that we aren't frozen yet or the freezing in set_freezable()
|
| /kernel/linux/linux-5.10/kernel/power/ |
| D | user.c | 35 bool frozen; member 95 data->frozen = false; in snapshot_open() 116 if (data->frozen) { in snapshot_release() 274 if (data->frozen) in snapshot_ioctl() 287 data->frozen = true; in snapshot_ioctl() 292 if (!data->frozen || data->ready) in snapshot_ioctl() 298 data->frozen = false; in snapshot_ioctl() 302 if (data->mode != O_RDONLY || !data->frozen || data->ready) { in snapshot_ioctl() 317 if (data->mode != O_WRONLY || !data->frozen || in snapshot_ioctl() 383 if (!data->frozen) { in snapshot_ioctl() [all …]
|
| D | process.c | 103 && freezing(p) && !frozen(p)) in try_to_freeze_tasks() 118 * The current thread will not be frozen. The same process that calls 131 /* Make sure this task doesn't get frozen */ in freeze_processes() 149 * Now that the whole userspace is frozen we need to disable in freeze_processes()
|
| /kernel/linux/linux-6.6/kernel/power/ |
| D | user.c | 35 bool frozen; member 96 data->frozen = false; in snapshot_open() 118 if (data->frozen) { in snapshot_release() 278 if (data->frozen) in snapshot_ioctl() 291 data->frozen = true; in snapshot_ioctl() 296 if (!data->frozen || data->ready) in snapshot_ioctl() 302 data->frozen = false; in snapshot_ioctl() 306 if (data->mode != O_RDONLY || !data->frozen || data->ready) { in snapshot_ioctl() 321 if (data->mode != O_WRONLY || !data->frozen || in snapshot_ioctl() 387 if (!data->frozen) { in snapshot_ioctl() [all …]
|
| /kernel/linux/linux-6.6/Documentation/power/ |
| D | freezing-of-tasks.rst | 34 'frozen' and therefore the set of functions handling this mechanism is referred 37 frozen before kernel threads. 41 if the task is to be frozen and makes the task enter __refrigerator(). 47 that combine interruptible sleep with checking if the task is to be frozen and 69 order to clear the PF_FROZEN flag for each frozen task. Then, the tasks that 70 have been frozen leave __refrigerator() and continue running. 156 be frozen before the driver's .suspend() callback is executed and it will be 168 if this process is not frozen, it may notice that the number of CPUs has 179 and B is frozen in the meantime, then A will be blocked until B is thawed, which 200 fail, because the user land process that should respond to the request is frozen [all …]
|
| /kernel/linux/linux-5.10/Documentation/power/ |
| D | freezing-of-tasks.rst | 34 'frozen' and therefore the set of functions handling this mechanism is referred 37 frozen before kernel threads. 41 if the task is to be frozen and makes the task enter __refrigerator(). 47 that combine interruptible sleep with checking if the task is to be frozen and 69 order to clear the PF_FROZEN flag for each frozen task. Then, the tasks that 70 have been frozen leave __refrigerator() and continue running. 156 be frozen before the driver's .suspend() callback is executed and it will be 168 if this process is not frozen, it may notice that the number of CPUs has 179 and B is frozen in the meantime, then A will be blocked until B is thawed, which 200 fail, because the user land process that should respond to the request is frozen [all …]
|
| /kernel/linux/linux-6.6/fs/xfs/scrub/ |
| D | fscounters.c | 59 bool frozen; member 183 fsc->frozen = true; in xchk_fscounters_freeze() 196 if (!fsc->frozen) in xchk_fscounters_cleanup() 201 xfs_emerg(sc->mp, "still frozen after scrub, err=%d", error); in xchk_fscounters_cleanup() 203 fsc->frozen = false; in xchk_fscounters_cleanup() 518 * If the filesystem is not frozen, the counter summation calls above in xchk_fscounters() 527 if (!fsc->frozen) in xchk_fscounters() 567 * frozen, we treat the discrepancy as a corruption because the freeze in xchk_fscounters() 573 if (fsc->frozen) in xchk_fscounters() 580 if (fsc->frozen) in xchk_fscounters() [all …]
|
| /kernel/linux/linux-6.6/fs/ |
| D | super.c | 1100 if (sb->s_writers.frozen != SB_UNFROZEN) in reconfigure_super() 1124 if (sb->s_writers.frozen != SB_UNFROZEN) in reconfigure_super() 1240 * emergency_thaw_all -- forcibly thaw every frozen filesystem 1519 * It is enough to check bdev was not frozen before we set s_bdev. in setup_bdev_super() 1525 warnf(fc, "%pg: Can't mount, blockdev is frozen", bdev); in setup_bdev_super() 1897 unsigned short old = sb->s_writers.frozen; in wait_for_partially_frozen() 1900 ret = wait_var_event_killable(&sb->s_writers.frozen, in wait_for_partially_frozen() 1901 sb->s_writers.frozen != old); in wait_for_partially_frozen() 1904 sb->s_writers.frozen != SB_UNFROZEN && in wait_for_partially_frozen() 1905 sb->s_writers.frozen != SB_FREEZE_COMPLETE); in wait_for_partially_frozen() [all …]
|
| /kernel/linux/linux-6.6/include/trace/events/ |
| D | mptcp.h | 83 __field(u8, frozen) 102 __entry->frozen = mpext->frozen; 109 …u csum=%x use_map=%u dsn64=%u data_fin=%u use_ack=%u ack64=%u mpc_map=%u frozen=%u reset_transient… 115 __entry->mpc_map, __entry->frozen,
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | freezer.h | 25 * Check if a process has been frozen 27 extern bool frozen(struct task_struct *p); 74 static inline bool frozen(struct task_struct *p) { return false; } in frozen() function
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/powernv/ |
| D | eeh-powernv.c | 155 * to clear frozen PE during PCI config access. in pnv_eeh_enable_phbs() 394 * the PE becomes frozen for the first time and the flag has in pnv_eeh_probe() 546 * Check PHB state. If the PHB is frozen for the in pnv_eeh_get_phb_state() 574 * We don't clobber hardware frozen state until PE in pnv_eeh_get_pe_state() 646 * If the PE is switching to frozen state for the in pnv_eeh_get_pe_state() 1048 * frozen state during PE reset. However, the good idea here from in pnv_eeh_reset() 1049 * benh is to keep frozen state before we get PE reset done completely in pnv_eeh_reset() 1050 * (until BAR restore). With the frozen state, HW drops illegal IO in pnv_eeh_reset() 1051 * or MMIO access, which can incur recrusive frozen PE during PE in pnv_eeh_reset() 1052 * reset. The side effect is that EEH core has to clear the frozen in pnv_eeh_reset() [all …]
|
| /kernel/linux/linux-6.6/arch/powerpc/platforms/powernv/ |
| D | eeh-powernv.c | 156 * to clear frozen PE during PCI config access. in pnv_eeh_enable_phbs() 395 * the PE becomes frozen for the first time and the flag has in pnv_eeh_probe() 547 * Check PHB state. If the PHB is frozen for the in pnv_eeh_get_phb_state() 575 * We don't clobber hardware frozen state until PE in pnv_eeh_get_pe_state() 647 * If the PE is switching to frozen state for the in pnv_eeh_get_pe_state() 1048 * frozen state during PE reset. However, the good idea here from in pnv_eeh_reset() 1049 * benh is to keep frozen state before we get PE reset done completely in pnv_eeh_reset() 1050 * (until BAR restore). With the frozen state, HW drops illegal IO in pnv_eeh_reset() 1051 * or MMIO access, which can incur recursive frozen PE during PE in pnv_eeh_reset() 1052 * reset. The side effect is that EEH core has to clear the frozen in pnv_eeh_reset() [all …]
|
| /kernel/linux/linux-5.10/fs/ |
| D | super.c | 798 if (!s || s->s_writers.frozen == SB_UNFROZEN) in __get_super_thawed() 805 s->s_writers.frozen == SB_UNFROZEN); in __get_super_thawed() 816 * (or immediately if it was not frozen). %NULL is returned if no match 831 * (or immediately if it was not frozen) and s_umount semaphore is held 914 if (sb->s_writers.frozen != SB_UNFROZEN) in reconfigure_super() 937 if (sb->s_writers.frozen != SB_UNFROZEN) in reconfigure_super() 1055 * emergency_thaw_all -- forcibly thaw every frozen filesystem 1317 warnf(fc, "%pg: Can't mount, blockdev is frozen", bdev); in get_tree_bdev() 1694 * During this function, sb->s_writers.frozen goes through these values: 1698 * SB_FREEZE_WRITE: The file system is in the process of being frozen. New [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/pm/ |
| D | notifiers.rst | 22 processes are frozen at these points). The solution may be to load the firmware 23 into memory before processes are frozen and upload it from there in the 30 The system is going to hibernate, tasks will be frozen immediately. This
|
| /kernel/linux/linux-6.6/Documentation/driver-api/pm/ |
| D | notifiers.rst | 22 processes are frozen at these points). The solution may be to load the firmware 23 into memory before processes are frozen and upload it from there in the 30 The system is going to hibernate, tasks will be frozen immediately. This
|