vserver 1.9.3
[linux-2.6.git] / drivers / pnp / pnpbios / core.c
index 6c98663..1a2fe19 100644 (file)
@@ -252,8 +252,10 @@ static int pnpbios_set_resources(struct pnp_dev * dev, struct pnp_resource_table
        node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
        if (!node)
                return -1;
-       if (pnp_bios_get_dev_node(&nodenum, (char )PNPMODE_DYNAMIC, node))
+       if (pnp_bios_get_dev_node(&nodenum, (char )PNPMODE_DYNAMIC, node)) {
+               kfree(node);
                return -ENODEV;
+       }
        if(pnpbios_write_resources_to_node(res, node)<0) {
                kfree(node);
                return -1;