compat: Handle COMPAT_USE_64BIT_TIME in the lp driver
H. Peter Anvin [Fri, 10 Feb 2012 22:08:52 +0000 (14:08 -0800)]
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>

drivers/char/lp.c

index f434856..a270971 100644 (file)
@@ -706,16 +706,13 @@ static long lp_compat_ioctl(struct file *file, unsigned int cmd,
 {
        unsigned int minor;
        struct timeval par_timeout;
-       struct compat_timeval __user *tc;
        int ret;
 
        minor = iminor(file->f_path.dentry->d_inode);
        mutex_lock(&lp_mutex);
        switch (cmd) {
        case LPSETTIMEOUT:
-               tc = compat_ptr(arg);
-               if (get_user(par_timeout.tv_sec, &tc->tv_sec) ||
-                   get_user(par_timeout.tv_usec, &tc->tv_usec)) {
+               if (compat_get_timeval(&par_timeout, compat_ptr(arg))) {
                        ret = -EFAULT;
                        break;
                }