summaryrefslogtreecommitdiffstats
path: root/include/linux/umh.h
diff options
context:
space:
mode:
authorPeter Zijlstra <peterz@infradead.org>2022-08-22 13:18:18 +0200
committerPeter Zijlstra <peterz@infradead.org>2022-09-07 21:53:48 +0200
commit1fbcaa923ce2d7e6de17abd74fa076dc1e0be1a2 (patch)
treef6b83d9a4edbd1c8cdc2ba1b48635fa2096a2eb6 /include/linux/umh.h
parent5950e5d574c636a07dd21a872c2f8b41f6d20c55 (diff)
downloadlinux-stable-1fbcaa923ce2d7e6de17abd74fa076dc1e0be1a2.tar.gz
linux-stable-1fbcaa923ce2d7e6de17abd74fa076dc1e0be1a2.tar.bz2
linux-stable-1fbcaa923ce2d7e6de17abd74fa076dc1e0be1a2.zip
freezer,umh: Clean up freezer/initrd interaction
handle_initrd() marks itself as PF_FREEZER_SKIP in order to ensure that the UMH, which is going to freeze the system, doesn't indefinitely wait for it's caller. Rework things by adding UMH_FREEZABLE to indicate the completion is freezable. Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://lore.kernel.org/r/20220822114648.791019324@infradead.org
Diffstat (limited to 'include/linux/umh.h')
-rw-r--r--include/linux/umh.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/include/linux/umh.h b/include/linux/umh.h
index 244aff638220..5d1f6129b847 100644
--- a/include/linux/umh.h
+++ b/include/linux/umh.h
@@ -11,10 +11,11 @@
struct cred;
struct file;
-#define UMH_NO_WAIT 0 /* don't wait at all */
-#define UMH_WAIT_EXEC 1 /* wait for the exec, but not the process */
-#define UMH_WAIT_PROC 2 /* wait for the process to complete */
-#define UMH_KILLABLE 4 /* wait for EXEC/PROC killable */
+#define UMH_NO_WAIT 0x00 /* don't wait at all */
+#define UMH_WAIT_EXEC 0x01 /* wait for the exec, but not the process */
+#define UMH_WAIT_PROC 0x02 /* wait for the process to complete */
+#define UMH_KILLABLE 0x04 /* wait for EXEC/PROC killable */
+#define UMH_FREEZABLE 0x08 /* wait for EXEC/PROC freezable */
struct subprocess_info {
struct work_struct work;