np = kcalloc(1, sizeof(*np), GFP_KERNEL); 
np = kzalloc(sizeof(*np), GFP_KERNEL); 
static int pSeries_reconfig_add_node(const char *path, struct property *proplist){	struct device_node *np;	int err = -ENOMEM;	np = kcalloc(1, sizeof(*np), GFP_KERNEL);	if (!np)		goto out_err;	np->full_name = kmalloc(strlen(path) + 1, GFP_KERNEL);	if (!np->full_name)		goto out_err;	strcpy(np->full_name, path);	np->properties = proplist;	OF_MARK_DYNAMIC(np);	kref_init(&np->kref);	np->parent = derive_parent(path);	if (IS_ERR(np->parent)) {		err = PTR_ERR(np->parent);		goto out_err;	}	err = notifier_call_chain(&pSeries_reconfig_chain,				  PSERIES_RECONFIG_ADD, np);	if (err == NOTIFY_BAD) {		printk(KERN_ERR "Failed to add device node %s\n", path);		err = -ENOMEM; /* For now, safe to assume kmalloc failure */		goto out_err;	}	of_attach_node(np);	add_node_proc_entries(np);	of_node_put(np->parent);	return 0;out_err:	if (np) {		of_node_put(np->parent);		kfree(np->full_name);		kfree(np);	}	return err;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/874ca6cd3fb454f4dfafd2bbb6c6893303227c3f/pSeries_reconfig.c/clean/arch/ppc64/kernel/pSeries_reconfig.c