X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fmisc%2Fintel_menlow.c;h=80a1363524087a1e66e575058360d071bbca352f;hb=29ca069cc6572cce62e42a27efdab01f50190616;hp=5bb8816c912688a0ffe85d3aa86b6aca80f4120c;hpb=96916090f488986a4ebb8e9ffa6a3b50881d5ccd;p=linux-2.6 diff --git a/drivers/misc/intel_menlow.c b/drivers/misc/intel_menlow.c index 5bb8816c91..80a1363524 100644 --- a/drivers/misc/intel_menlow.c +++ b/drivers/misc/intel_menlow.c @@ -179,14 +179,22 @@ static int intel_menlow_memory_add(struct acpi_device *device) result = sysfs_create_link(&device->dev.kobj, &cdev->device.kobj, "thermal_cooling"); if (result) - printk(KERN_ERR PREFIX "Create sysfs link\n"); + goto unregister; + result = sysfs_create_link(&cdev->device.kobj, &device->dev.kobj, "device"); - if (result) - printk(KERN_ERR PREFIX "Create sysfs link\n"); + if (result) { + sysfs_remove_link(&device->dev.kobj, "thermal_cooling"); + goto unregister; + } end: return result; + + unregister: + thermal_cooling_device_unregister(cdev); + return result; + } static int intel_menlow_memory_remove(struct acpi_device *device, int type)