All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/6] Freezer Rewrite
@ 2022-08-22 11:18 Peter Zijlstra
  2022-08-22 11:18 ` [PATCH v3 1/6] freezer: Have {,un}lock_system_sleep() save/restore flags Peter Zijlstra
                   ` (5 more replies)
  0 siblings, 6 replies; 94+ messages in thread
From: Peter Zijlstra @ 2022-08-22 11:18 UTC (permalink / raw)
  To: rjw, oleg, mingo, vincent.guittot, dietmar.eggemann, rostedt,
	mgorman, ebiederm, bigeasy, Will Deacon
  Cc: linux-kernel, peterz, tj, linux-pm

Hi all,

With Eric picking up the ptrace patches adding JOBCTL_STOPPED / JOBCTL_TRACED
and them having landed in Linus' tree, here a respin of the Freezer rewrite
that relies on it.

---
 drivers/acpi/x86/s2idle.c         |   12 +
 drivers/android/binder.c          |    4 
 drivers/media/pci/pt3/pt3.c       |    4 
 drivers/scsi/scsi_transport_spi.c |    7 -
 fs/cifs/inode.c                   |    4 
 fs/cifs/transport.c               |    5 
 fs/coredump.c                     |    5 
 fs/nfs/file.c                     |    3 
 fs/nfs/inode.c                    |   12 -
 fs/nfs/nfs3proc.c                 |    3 
 fs/nfs/nfs4proc.c                 |   14 +-
 fs/nfs/nfs4state.c                |    3 
 fs/nfs/pnfs.c                     |    4 
 fs/xfs/xfs_trans_ail.c            |    8 -
 include/linux/completion.h        |    1 
 include/linux/freezer.h           |  245 +-------------------------------------
 include/linux/sched.h             |   41 +++---
 include/linux/sunrpc/sched.h      |    7 -
 include/linux/suspend.h           |    8 -
 include/linux/umh.h               |    9 -
 include/linux/wait.h              |   40 +++++-
 init/do_mounts_initrd.c           |   10 -
 kernel/cgroup/legacy_freezer.c    |   23 +--
 kernel/exit.c                     |    4 
 kernel/fork.c                     |    5 
 kernel/freezer.c                  |  133 ++++++++++++++------
 kernel/futex/waitwake.c           |    8 -
 kernel/hung_task.c                |    4 
 kernel/power/hibernate.c          |   35 +++--
 kernel/power/main.c               |   18 +-
 kernel/power/process.c            |   10 -
 kernel/power/suspend.c            |   12 +
 kernel/power/user.c               |   24 ++-
 kernel/ptrace.c                   |    2 
 kernel/sched/completion.c         |    9 +
 kernel/sched/core.c               |    6 
 kernel/signal.c                   |   14 +-
 kernel/time/hrtimer.c             |    4 
 kernel/umh.c                      |   18 +-
 mm/khugepaged.c                   |    4 
 net/sunrpc/sched.c                |   12 -
 net/unix/af_unix.c                |    8 -
 42 files changed, 341 insertions(+), 461 deletions(-)


^ permalink raw reply	[flat|nested] 94+ messages in thread
* [PATCH v3 0/6] Freezer rewrite
@ 2021-10-09 10:07 Peter Zijlstra
  2021-10-09 10:08 ` [PATCH v3 6/6] freezer,sched: Rewrite core freezer logic Peter Zijlstra
  0 siblings, 1 reply; 94+ messages in thread
From: Peter Zijlstra @ 2021-10-09 10:07 UTC (permalink / raw)
  To: rjw, oleg, mingo, vincent.guittot, dietmar.eggemann, rostedt,
	mgorman, Will Deacon
  Cc: linux-kernel, peterz, tj, linux-pm

Hi all,

This is the by now familiar rewrite of the freezer, but with yet another
attempt at getting the special blocked states (STOPPED/TRACED) right.

Currently it is already possible to tell if a task should be STOPPED from
looking at p->jobctl, the same idea is extended to TRACED and p->ptrace.

But treating p->jobctl/p->ptrace as canonical state, the blocked state can be
(hopefully correctly this time) reconstructed from it at all times.
Specifically, if a TRACED task was woken by the tracer, while the tracee was
FROZEN, the p->ptrace state will have been updated, and the thaw operation will
result in the wakeup.

Oleg, if you can please try and shoot holes in it again? :-)



^ permalink raw reply	[flat|nested] 94+ messages in thread

end of thread, other threads:[~2022-11-14  9:10 UTC | newest]

Thread overview: 94+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-22 11:18 [PATCH v3 0/6] Freezer Rewrite Peter Zijlstra
2022-08-22 11:18 ` [PATCH v3 1/6] freezer: Have {,un}lock_system_sleep() save/restore flags Peter Zijlstra
2022-08-23 17:25   ` Rafael J. Wysocki
2022-09-09  9:00   ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2022-08-22 11:18 ` [PATCH v3 2/6] freezer,umh: Clean up freezer/initrd interaction Peter Zijlstra
2022-08-23 17:28   ` Rafael J. Wysocki
2022-09-09  9:00   ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2022-08-22 11:18 ` [PATCH v3 3/6] sched: Change wait_task_inactive()s match_state Peter Zijlstra
2022-09-04 10:44   ` Ingo Molnar
2022-09-06 10:54     ` Peter Zijlstra
2022-09-07  7:23       ` Ingo Molnar
2022-09-07  9:29       ` Peter Zijlstra
2022-09-09  9:00         ` [tip: sched/core] sched: Rename task_running() to task_on_cpu() tip-bot2 for Peter Zijlstra
2022-09-07  9:30       ` [PATCH v3 3/6] sched: Change wait_task_inactive()s match_state Peter Zijlstra
2022-09-09  9:00   ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2022-08-22 11:18 ` [PATCH v3 4/6] sched/completion: Add wait_for_completion_state() Peter Zijlstra
2022-08-23 17:32   ` Rafael J. Wysocki
2022-08-26 21:54     ` Peter Zijlstra
2022-09-04 10:46   ` Ingo Molnar
2022-09-06 10:24     ` Peter Zijlstra
2022-09-07  7:35       ` Ingo Molnar
2022-09-07  9:24         ` Peter Zijlstra
2022-09-09  9:00   ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2022-08-22 11:18 ` [PATCH v3 5/6] sched/wait: Add wait_event_state() Peter Zijlstra
2022-09-04  9:54   ` Ingo Molnar
2022-09-06 11:08     ` Peter Zijlstra
2022-09-07  7:26       ` Ingo Molnar
2022-09-09  9:00   ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2022-08-22 11:18 ` [PATCH v3 6/6] freezer,sched: Rewrite core freezer logic Peter Zijlstra
2022-08-23 17:36   ` Rafael J. Wysocki
2022-09-04 10:09   ` Ingo Molnar
2022-09-06 11:23     ` Peter Zijlstra
2022-09-07  7:30       ` Ingo Molnar
2022-09-09  9:00       ` [tip: sched/core] sched: Show PF_flag holes tip-bot2 for Peter Zijlstra
2022-09-09  9:00   ` [tip: sched/core] freezer,sched: Rewrite core freezer logic tip-bot2 for Peter Zijlstra
2022-09-23  7:21   ` [PATCH v3 6/6] " Christian Borntraeger
2022-09-23  7:53     ` Christian Borntraeger
2022-09-26  8:06       ` Christian Borntraeger
2022-09-26 10:55         ` Christian Borntraeger
2022-09-26 12:13           ` Peter Zijlstra
2022-09-26 12:13             ` Peter Zijlstra
2022-09-26 12:32           ` Christian Borntraeger
2022-09-26 12:32             ` Christian Borntraeger
2022-09-26 12:55             ` Peter Zijlstra
2022-09-26 12:55               ` Peter Zijlstra
2022-09-26 13:23               ` Christian Borntraeger
2022-09-26 13:23                 ` Christian Borntraeger
2022-09-26 13:37                 ` Peter Zijlstra
2022-09-26 13:37                   ` Peter Zijlstra
2022-09-26 13:54                   ` Christian Borntraeger
2022-09-26 13:54                     ` Christian Borntraeger
2022-09-26 15:49                   ` Christian Borntraeger
2022-09-26 15:49                     ` Christian Borntraeger
2022-09-26 18:06                     ` Peter Zijlstra
2022-09-26 18:06                       ` Peter Zijlstra
2022-09-26 18:22                       ` Peter Zijlstra
2022-09-26 18:22                         ` Peter Zijlstra
2022-09-27  5:35                         ` Christian Borntraeger
2022-09-27  5:35                           ` Christian Borntraeger
2022-09-28  5:44                           ` Christian Borntraeger
2022-09-28  5:44                             ` Christian Borntraeger
2022-10-21 17:22   ` Ville Syrjälä
2022-10-21 17:22     ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Ville Syrjälä
2022-10-25  4:52     ` [PATCH v3 6/6] freezer,sched: " Ville Syrjälä
2022-10-25  4:52       ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Ville Syrjälä
2022-10-25 10:49       ` [PATCH v3 6/6] freezer,sched: " Peter Zijlstra
2022-10-25 10:49         ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Peter Zijlstra
2022-10-26 10:32         ` [PATCH v3 6/6] freezer,sched: " Ville Syrjälä
2022-10-26 10:32           ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Ville Syrjälä
2022-10-26 11:43           ` Peter Zijlstra
2022-10-26 11:43             ` [PATCH v3 6/6] freezer,sched: " Peter Zijlstra
2022-10-26 12:12             ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Peter Zijlstra
2022-10-26 12:12               ` [PATCH v3 6/6] freezer,sched: " Peter Zijlstra
2022-10-26 12:14               ` Peter Zijlstra
2022-10-26 12:14                 ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Peter Zijlstra
2022-10-27  5:58             ` [PATCH v3 6/6] freezer,sched: " Chen Yu
2022-10-27  5:58               ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Chen Yu
2022-10-27  7:39               ` [PATCH v3 6/6] freezer,sched: " Peter Zijlstra
2022-10-27  7:39                 ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Peter Zijlstra
2022-10-27 13:09             ` [PATCH v3 6/6] freezer,sched: " Ville Syrjälä
2022-10-27 13:09               ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Ville Syrjälä
2022-10-27 16:53               ` [PATCH v3 6/6] freezer,sched: " Peter Zijlstra
2022-10-27 16:53                 ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Peter Zijlstra
2022-11-02 16:57                 ` [PATCH v3 6/6] freezer,sched: " Ville Syrjälä
2022-11-02 16:57                   ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Ville Syrjälä
2022-11-02 22:16                   ` [PATCH v3 6/6] freezer,sched: " Peter Zijlstra
2022-11-02 22:16                     ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Peter Zijlstra
2022-11-07 11:47                     ` [PATCH v3 6/6] freezer,sched: " Ville Syrjälä
2022-11-07 11:47                       ` [Intel-gfx] [PATCH v3 6/6] freezer, sched: " Ville Syrjälä
2022-11-10 20:27                       ` Ville Syrjälä
2022-11-10 20:27                         ` Ville Syrjälä
2022-11-14  9:10             ` [tip: sched/urgent] sched: Fix race in task_call_func() tip-bot2 for Peter Zijlstra
  -- strict thread matches above, loose matches on Subject: below --
2021-10-09 10:07 [PATCH v3 0/6] Freezer rewrite Peter Zijlstra
2021-10-09 10:08 ` [PATCH v3 6/6] freezer,sched: Rewrite core freezer logic Peter Zijlstra
2021-10-18 13:36   ` Peter Zijlstra

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.