serport->serio = serio = kcalloc(1, sizeof(struct serio), GFP_KERNEL); 
serport->serio = serio = kzalloc(sizeof(struct serio), GFP_KERNEL); 
static ssize_t serport_ldisc_read(struct tty_struct * tty, struct file * file, unsigned char __user * buf, size_t nr){	struct serport *serport = (struct serport*) tty->disc_data;	struct serio *serio;	char name[64];	if (test_and_set_bit(SERPORT_BUSY, &serport->flags))		return -EBUSY;	serport->serio = serio = kcalloc(1, sizeof(struct serio), GFP_KERNEL);	if (!serio)		return -ENOMEM;	strlcpy(serio->name, "Serial port", sizeof(serio->name));	snprintf(serio->phys, sizeof(serio->phys), "%s/serio0", tty_name(tty, name));	serio->id = serport->id;	serio->id.type = SERIO_RS232;	serio->write = serport_serio_write;	serio->open = serport_serio_open;	serio->close = serport_serio_close;	serio->port_data = serport;	serio_register_port(serport->serio);	printk(KERN_INFO "serio: Serial port %s\n", tty_name(tty, name));	wait_event_interruptible(serport->wait, test_bit(SERPORT_DEAD, &serport->flags));	serio_unregister_port(serport->serio);	serport->serio = NULL;	clear_bit(SERPORT_DEAD, &serport->flags);	clear_bit(SERPORT_BUSY, &serport->flags);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/a97e148a8b8da8b04bc3e18ceb824a8f5f56d567/serport.c/clean/drivers/input/serio/serport.c