Merge git://git.infradead.org/users/eparis/audit
[firefly-linux-kernel-4.4.55.git] / include / linux / init.h
index a3ba270763426bd7dfd9f0633e0abb4476d2dc50..2df8e8dd10a483d55d723b6ac4875de807ab2044 100644 (file)
@@ -297,16 +297,28 @@ void __init parse_early_options(char *cmdline);
 
 #else /* MODULE */
 
-/* Don't use these in loadable modules, but some people do... */
+/*
+ * In most cases loadable modules do not need custom
+ * initcall levels. There are still some valid cases where
+ * a driver may be needed early if built in, and does not
+ * matter when built as a loadable module. Like bus
+ * snooping debug drivers.
+ */
 #define early_initcall(fn)             module_init(fn)
 #define core_initcall(fn)              module_init(fn)
+#define core_initcall_sync(fn)         module_init(fn)
 #define postcore_initcall(fn)          module_init(fn)
+#define postcore_initcall_sync(fn)     module_init(fn)
 #define arch_initcall(fn)              module_init(fn)
 #define subsys_initcall(fn)            module_init(fn)
+#define subsys_initcall_sync(fn)       module_init(fn)
 #define fs_initcall(fn)                        module_init(fn)
+#define fs_initcall_sync(fn)           module_init(fn)
 #define rootfs_initcall(fn)            module_init(fn)
 #define device_initcall(fn)            module_init(fn)
+#define device_initcall_sync(fn)       module_init(fn)
 #define late_initcall(fn)              module_init(fn)
+#define late_initcall_sync(fn)         module_init(fn)
 
 #define console_initcall(fn)           module_init(fn)
 #define security_initcall(fn)          module_init(fn)