aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/processor_core.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c
index 1c0008edccda..feddc8ed870a 100644
--- a/drivers/acpi/processor_core.c
+++ b/drivers/acpi/processor_core.c
@@ -621,7 +621,7 @@ static int __cpuinit acpi_processor_start(struct acpi_device *device)
621 int result = 0; 621 int result = 0;
622 acpi_status status = AE_OK; 622 acpi_status status = AE_OK;
623 struct acpi_processor *pr; 623 struct acpi_processor *pr;
624 624 struct sys_device *sysdev;
625 625
626 pr = acpi_driver_data(device); 626 pr = acpi_driver_data(device);
627 627
@@ -652,6 +652,10 @@ static int __cpuinit acpi_processor_start(struct acpi_device *device)
652 if (result) 652 if (result)
653 goto end; 653 goto end;
654 654
655 sysdev = get_cpu_sysdev(pr->id);
656 if (sysfs_create_link(&device->dev.kobj, &sysdev->kobj, "sysdev"))
657 return -EFAULT;
658
655 status = acpi_install_notify_handler(pr->handle, ACPI_DEVICE_NOTIFY, 659 status = acpi_install_notify_handler(pr->handle, ACPI_DEVICE_NOTIFY,
656 acpi_processor_notify, pr); 660 acpi_processor_notify, pr);
657 661
@@ -810,6 +814,8 @@ static int acpi_processor_remove(struct acpi_device *device, int type)
810 status = acpi_remove_notify_handler(pr->handle, ACPI_DEVICE_NOTIFY, 814 status = acpi_remove_notify_handler(pr->handle, ACPI_DEVICE_NOTIFY,
811 acpi_processor_notify); 815 acpi_processor_notify);
812 816
817 sysfs_remove_link(&device->dev.kobj, "sysdev");
818
813 acpi_processor_remove_fs(device); 819 acpi_processor_remove_fs(device);
814 820
815 if (pr->cdev) { 821 if (pr->cdev) {