static ssize_t manage_flash_read(struct file *file, char *buf, 
static ssize_t manage_flash_read(struct file *file, char __user *buf, 
static ssize_t manage_flash_read(struct file *file, char *buf,			       size_t count, loff_t *ppos){	struct proc_dir_entry *dp = PDE(file->f_dentry->d_inode);	struct rtas_manage_flash_t *args_buf;	char msg[RTAS_MSG_MAXLEN];	int msglen;	args_buf = (struct rtas_manage_flash_t *) dp->data;	if (args_buf == NULL)		return 0;	msglen = sprintf(msg, "%d\n", args_buf->status);	if (msglen > count)		msglen = count;	if (ppos && *ppos != 0)		return 0;	/* be cheap */	if (!access_ok(VERIFY_WRITE, buf, msglen))		return -EINVAL;	if (copy_to_user(buf, msg, msglen))		return -EFAULT;	if (ppos)		*ppos = msglen;	return msglen;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/efa545791ff439d778f79d02255d59ff1f7ea0fc/rtas_flash.c/buggy/arch/ppc64/kernel/rtas_flash.c