vt: keyboard, use tty_insert_flip_string in puts_queue
'puts_queue' currently loops over characters and employs the full tty buffer machinery for every character. Do the buffer allocation only once and copy all the character at once. This is achieved using tty_insert_flip_string instead of loop+tty_insert_flip_char. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Link: https://lore.kernel.org/r/20201029113222.32640-17-jslaby@suse.cz Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
2389cdc360
Коммит
c35f638fc2
|
@ -324,12 +324,9 @@ static void put_queue(struct vc_data *vc, int ch)
|
|||
tty_schedule_flip(&vc->port);
|
||||
}
|
||||
|
||||
static void puts_queue(struct vc_data *vc, char *cp)
|
||||
static void puts_queue(struct vc_data *vc, const char *cp)
|
||||
{
|
||||
while (*cp) {
|
||||
tty_insert_flip_char(&vc->port, *cp, 0);
|
||||
cp++;
|
||||
}
|
||||
tty_insert_flip_string(&vc->port, cp, strlen(cp));
|
||||
tty_schedule_flip(&vc->port);
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче