ACPI: call acpi_sleep_proc_init() explicitly rather than as initcall

This patch makes acpi_init() call acpi_sleep_proc_init() directly.
Previously, acpi_sleep_proc_init() was a late_initcall (sequence 7),
apparently to make sure that the /proc hierarchy already exists:

    2003/02/13 12:38:03-06:00 mochel
    acpi sleep: demote sleep proc file creation.

    - Make acpi_sleep_proc_init() a late_initcall(), and not called from
      acpi_sleep_init(). This guarantees that the acpi proc hierarchy is at
      least there when we create the dang file.

This should no longer be an issue because acpi_bus_init() (called early
in acpi_init()) creates acpi_root_dir (/proc/acpi).

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
Bjorn Helgaas 2009-03-24 16:50:14 -06:00 committed by Len Brown
parent 0e46517d96
commit 9cee43e079
3 changed files with 8 additions and 6 deletions

View file

@ -885,6 +885,7 @@ static int __init acpi_init(void)
acpi_power_init(); acpi_power_init();
acpi_system_init(); acpi_system_init();
acpi_debug_init(); acpi_debug_init();
acpi_sleep_proc_init();
return result; return result;
} }

View file

@ -33,3 +33,9 @@ int acpi_boot_ec_enable(void);
Suspend/Resume Suspend/Resume
-------------------------------------------------------------------------- */ -------------------------------------------------------------------------- */
extern int acpi_sleep_init(void); extern int acpi_sleep_init(void);
#ifdef CONFIG_ACPI_SLEEP
int acpi_sleep_proc_init(void);
#else
static inline int acpi_sleep_proc_init(void) { return 0; }
#endif

View file

@ -496,11 +496,8 @@ static u32 rtc_handler(void *context)
} }
#endif /* HAVE_ACPI_LEGACY_ALARM */ #endif /* HAVE_ACPI_LEGACY_ALARM */
static int __init acpi_sleep_proc_init(void) int __init acpi_sleep_proc_init(void)
{ {
if (acpi_disabled)
return 0;
#ifdef CONFIG_ACPI_PROCFS #ifdef CONFIG_ACPI_PROCFS
/* 'sleep' [R/W] */ /* 'sleep' [R/W] */
proc_create("sleep", S_IFREG | S_IRUGO | S_IWUSR, proc_create("sleep", S_IFREG | S_IRUGO | S_IWUSR,
@ -527,5 +524,3 @@ static int __init acpi_sleep_proc_init(void)
return 0; return 0;
} }
late_initcall(acpi_sleep_proc_init);