Index: 2.6.20-d390/fs/compat.c =================================================================== --- 2.6.20-d390.orig/fs/compat.c 2007-02-12 13:24:20.000000000 -0500 +++ 2.6.20-d390/fs/compat.c 2007-02-12 16:16:08.000000000 -0500 @@ -439,15 +439,10 @@ } if (S_ISSOCK(filp->f_path.dentry->d_inode->i_mode) && - cmd >= SIOCDEVPRIVATE && cmd <= (SIOCDEVPRIVATE + 15)) { + cmd >= SIOCDEVPRIVATE && cmd <= (SIOCDEVPRIVATE + 15)) error = siocdevprivate_ioctl(fd, cmd, arg); - } else { - static int count; - - if (++count <= 50) - compat_ioctl_error(filp, fd, cmd, arg); - error = -EINVAL; - } + else + error = -ENOTTY; goto out_fput; Index: 2.6.20-d390/fs/ioctl.c =================================================================== --- 2.6.20-d390.orig/fs/ioctl.c 2007-02-12 13:24:20.000000000 -0500 +++ 2.6.20-d390/fs/ioctl.c 2007-02-12 16:14:29.000000000 -0500 @@ -27,7 +27,7 @@ if (filp->f_op->unlocked_ioctl) { error = filp->f_op->unlocked_ioctl(filp, cmd, arg); if (error == -ENOIOCTLCMD) - error = -EINVAL; + error = -ENOTTY; goto out; } else if (filp->f_op->ioctl) { lock_kernel();