flush_scheduled_work(); 
ssize_t tpm_read(struct file * file, char __user *buf,		 size_t size, loff_t * off){	struct tpm_chip *chip = file->private_data;	int ret_size;	del_singleshot_timer_sync(&chip->user_read_timer);	ret_size = atomic_read(&chip->data_pending);	atomic_set(&chip->data_pending, 0);	if (ret_size > 0) {	/* relay data */		if (size < ret_size)			ret_size = size;		down(&chip->buffer_mutex);		if (copy_to_user(buf, chip->data_buffer, ret_size))			ret_size = -EFAULT;		up(&chip->buffer_mutex);	}	return ret_size;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/ba3961152e7016237e15e3dfc18f08c1853d156b/tpm.c/clean/drivers/char/tpm/tpm.c