aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/lp.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2012-02-10 17:08:52 -0500
committerH. Peter Anvin <hpa@zytor.com>2012-02-20 15:48:47 -0500
commit9dd4ccaaf8cde924b78ba5f5b1a8ce3e7ead687f (patch)
treefcd2b60f8d41ef86ab7eb73bb3dcaf154ed4cd8d /drivers/char/lp.c
parent6684ba202b5ab2f36d574c72fe50c207d99b3e35 (diff)
compat: Handle COMPAT_USE_64BIT_TIME in the lp driver
Enable the lp driver to be used with a compat ABI with 64-bit time. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Greg Kroah-Hartman <greg@kroah.com>
Diffstat (limited to 'drivers/char/lp.c')
-rw-r--r--drivers/char/lp.c5
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 }