node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL); 
node = kcalloc(1, node_info.max_node_size, GFP_KERNEL); 
static int proc_read_devices(char *buf, char **start, off_t pos,                             int count, int *eof, void *data){	struct pnp_bios_node *node;	u8 nodenum;	char *p = buf;	if (pos >= 0xff)		return 0;	node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);	if (!node) return -ENOMEM;	for (nodenum=pos; nodenum<0xff; ) {		u8 thisnodenum = nodenum;		/* 26 = the number of characters per line sprintf'ed */		if ((p - buf + 26) > count)			break;		if (pnp_bios_get_dev_node(&nodenum, PNPMODE_DYNAMIC, node))			break;		p += sprintf(p, "%02x\t%08x\t%02x:%02x:%02x\t%04x\n",			     node->handle, node->eisa_id,			     node->type_code[0], node->type_code[1],			     node->type_code[2], node->flags);		if (nodenum <= thisnodenum) {			printk(KERN_ERR "%s Node number 0x%x is out of sequence following node 0x%x. Aborting.\n", "PnPBIOS: proc_read_devices:", (unsigned int)nodenum, (unsigned int)thisnodenum);			*eof = 1;			break;		}	}	kfree(node);	if (nodenum == 0xff)		*eof = 1;	*start = (char *)((off_t)nodenum - pos);	return p - buf;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/a2822e7f00cdccbff8e507b5ebbddce1aa95eb5d/proc.c/clean/drivers/pnp/pnpbios/proc.c