From: Jiri Slaby according to ioctl_list, both have int * as a param, not ulong *. Signed-off-by: Jiri Slaby Tested-by: Oyvind Aabling Signed-off-by: Andrew Morton --- drivers/char/moxa.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/char/moxa.c~char-moxa-fix-tiocg-ssoftcar-param drivers/char/moxa.c --- a/drivers/char/moxa.c~char-moxa-fix-tiocg-ssoftcar-param +++ a/drivers/char/moxa.c @@ -741,9 +741,9 @@ static int moxa_ioctl(struct tty_struct MoxaPortSendBreak(ch->port, arg); return (0); case TIOCGSOFTCAR: - return put_user(C_CLOCAL(tty) ? 1 : 0, (unsigned long __user *) argp); + return put_user(C_CLOCAL(tty) ? 1 : 0, (int __user *)argp); case TIOCSSOFTCAR: - if(get_user(retval, (unsigned long __user *) argp)) + if (get_user(retval, (int __user *)argp)) return -EFAULT; arg = retval; tty->termios->c_cflag = ((tty->termios->c_cflag & ~CLOCAL) | _