mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-10 15:58:47 +00:00
tty: Move tty_write_message out of kernel/printk
This is pure tty code so put it in the tty layer where it can be with the locking relevant material it uses Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
452a00d2ee
commit
95f9bfc6b7
@ -1081,6 +1081,31 @@ out:
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* tty_write_message - write a message to a certain tty, not just the console.
|
||||||
|
* @tty: the destination tty_struct
|
||||||
|
* @msg: the message to write
|
||||||
|
*
|
||||||
|
* This is used for messages that need to be redirected to a specific tty.
|
||||||
|
* We don't put it into the syslog queue right now maybe in the future if
|
||||||
|
* really needed.
|
||||||
|
*
|
||||||
|
* We must still hold the BKL and test the CLOSING flag for the moment.
|
||||||
|
*/
|
||||||
|
|
||||||
|
void tty_write_message(struct tty_struct *tty, char *msg)
|
||||||
|
{
|
||||||
|
lock_kernel();
|
||||||
|
if (tty) {
|
||||||
|
mutex_lock(&tty->atomic_write_lock);
|
||||||
|
if (tty->ops->write && !test_bit(TTY_CLOSING, &tty->flags))
|
||||||
|
tty->ops->write(tty, msg, strlen(msg));
|
||||||
|
tty_write_unlock(tty);
|
||||||
|
}
|
||||||
|
unlock_kernel();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* tty_write - write method for tty device file
|
* tty_write - write method for tty device file
|
||||||
|
@ -1291,22 +1291,6 @@ static int __init disable_boot_consoles(void)
|
|||||||
}
|
}
|
||||||
late_initcall(disable_boot_consoles);
|
late_initcall(disable_boot_consoles);
|
||||||
|
|
||||||
/**
|
|
||||||
* tty_write_message - write a message to a certain tty, not just the console.
|
|
||||||
* @tty: the destination tty_struct
|
|
||||||
* @msg: the message to write
|
|
||||||
*
|
|
||||||
* This is used for messages that need to be redirected to a specific tty.
|
|
||||||
* We don't put it into the syslog queue right now maybe in the future if
|
|
||||||
* really needed.
|
|
||||||
*/
|
|
||||||
void tty_write_message(struct tty_struct *tty, char *msg)
|
|
||||||
{
|
|
||||||
if (tty && tty->ops->write)
|
|
||||||
tty->ops->write(tty, msg, strlen(msg));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if defined CONFIG_PRINTK
|
#if defined CONFIG_PRINTK
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user