diff options
-rw-r--r-- | drivers/char/lp.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/char/lp.c b/drivers/char/lp.c index f43485607063..a27097173b3a 100644 --- a/drivers/char/lp.c +++ b/drivers/char/lp.c | |||
@@ -706,16 +706,13 @@ static long lp_compat_ioctl(struct file *file, unsigned int cmd, | |||
706 | { | 706 | { |
707 | unsigned int minor; | 707 | unsigned int minor; |
708 | struct timeval par_timeout; | 708 | struct timeval par_timeout; |
709 | struct compat_timeval __user *tc; | ||
710 | int ret; | 709 | int ret; |
711 | 710 | ||
712 | minor = iminor(file->f_path.dentry->d_inode); | 711 | minor = iminor(file->f_path.dentry->d_inode); |
713 | mutex_lock(&lp_mutex); | 712 | mutex_lock(&lp_mutex); |
714 | switch (cmd) { | 713 | switch (cmd) { |
715 | case LPSETTIMEOUT: | 714 | case LPSETTIMEOUT: |
716 | tc = compat_ptr(arg); | 715 | if (compat_get_timeval(&par_timeout, compat_ptr(arg))) { |
717 | if (get_user(par_timeout.tv_sec, &tc->tv_sec) || | ||
718 | get_user(par_timeout.tv_usec, &tc->tv_usec)) { | ||
719 | ret = -EFAULT; | 716 | ret = -EFAULT; |
720 | break; | 717 | break; |
721 | } | 718 | } |