Fix memory leak in function nouveau_optimus_dsm() and nouveau_dsm().
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
 
        if (obj->type == ACPI_TYPE_INTEGER)
                if (obj->integer.value == 0x80000002) {
+                       kfree(output.pointer);
                        return -ENODEV;
                }
 
        obj = (union acpi_object *)output.pointer;
 
        if (obj->type == ACPI_TYPE_INTEGER)
-               if (obj->integer.value == 0x80000002)
+               if (obj->integer.value == 0x80000002) {
+                       kfree(output.pointer);
                        return -ENODEV;
+               }
 
        if (obj->type == ACPI_TYPE_BUFFER) {
                if (obj->buffer.length == 4 && result) {