if (put_user(timeout, (int *)arg)) 
if (put_user(timeout, (int __user *)argp)) 
static int mv64x60_wdt_ioctl(struct inode *inode, struct file *file,			     unsigned int cmd, unsigned long arg){	int timeout;	static struct watchdog_info info = {		.options = WDIOF_KEEPALIVEPING,		.firmware_version = 0,		.identity = "MV64x60 watchdog",	};	switch (cmd) {	case WDIOC_GETSUPPORT:		if (copy_to_user((void *)arg, &info, sizeof(info)))			return -EFAULT;		break;	case WDIOC_GETSTATUS:	case WDIOC_GETBOOTSTATUS:		if (put_user(wdt_status, (int *)arg))			return -EFAULT;		wdt_status &= ~WDIOF_KEEPALIVEPING;		break;	case WDIOC_GETTEMP:		return -EOPNOTSUPP;	case WDIOC_SETOPTIONS:		return -EOPNOTSUPP;	case WDIOC_KEEPALIVE:		mv64x60_wdt_service();		wdt_status |= WDIOF_KEEPALIVEPING;		break;	case WDIOC_SETTIMEOUT:		return -EOPNOTSUPP;	case WDIOC_GETTIMEOUT:		timeout = mv64x60_wdt_timeout * HZ;		if (put_user(timeout, (int *)arg))			return -EFAULT;		break;	default:		return -ENOIOCTLCMD;	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b2846dfa4aa1bbbf3f9977d67566952d7f621009/mv64x60_wdt.c/buggy/drivers/char/watchdog/mv64x60_wdt.c