Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 638157bc authored by Alan Cox's avatar Alan Cox Committed by Linus Torvalds
Browse files

serial167: prepare to push BKL down into drivers



Kill the softcar handlers again, wrap the ioctl handler in the BKL

Signed-off-by: default avatarAlan Cox <alan@redhat.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent bdf183aa
Loading
Loading
Loading
Loading
+3 −12
Original line number Diff line number Diff line
@@ -1539,6 +1539,8 @@ cy_ioctl(struct tty_struct *tty, struct file *file,
	printk("cy_ioctl %s, cmd = %x arg = %lx\n", tty->name, cmd, arg);	/* */
#endif

	lock_kernel();

	switch (cmd) {
	case CYGETMON:
		ret_val = get_mon_info(info, argp);
@@ -1584,18 +1586,6 @@ cy_ioctl(struct tty_struct *tty, struct file *file,
		break;

/* The following commands are incompletely implemented!!! */
	case TIOCGSOFTCAR:
		ret_val =
		    put_user(C_CLOCAL(tty) ? 1 : 0,
			     (unsigned long __user *)argp);
		break;
	case TIOCSSOFTCAR:
		ret_val = get_user(val, (unsigned long __user *)argp);
		if (ret_val)
			break;
		tty->termios->c_cflag =
		    ((tty->termios->c_cflag & ~CLOCAL) | (val ? CLOCAL : 0));
		break;
	case TIOCGSERIAL:
		ret_val = get_serial_info(info, argp);
		break;
@@ -1605,6 +1595,7 @@ cy_ioctl(struct tty_struct *tty, struct file *file,
	default:
		ret_val = -ENOIOCTLCMD;
	}
	unlock_kernel();

#ifdef SERIAL_DEBUG_OTHER
	printk("cy_ioctl done\n");