diff -Nupr src.orig/drivers/tty/n_tty.c src/drivers/tty/n_tty.c --- src.orig/drivers/tty/n_tty.c 2020-05-12 11:14:32.770639306 -0400 +++ src/drivers/tty/n_tty.c 2020-05-12 11:15:20.398575163 -0400 @@ -2296,7 +2296,7 @@ static ssize_t n_tty_read(struct tty_str * lock themselves) */ -static ssize_t n_tty_write(struct tty_struct *tty, struct file *file, +static ssize_t noinline kpatch_n_tty_write(struct tty_struct *tty, struct file *file, const unsigned char *buf, size_t nr) { const unsigned char *b = buf; @@ -2383,6 +2383,12 @@ break_out: return (b - buf) ? b - buf : retval; } +static ssize_t __attribute__((optimize("-fno-optimize-sibling-calls"))) n_tty_write(struct tty_struct *tty, struct file *file, + const unsigned char *buf, size_t nr) +{ + return kpatch_n_tty_write(tty, file, buf, nr); +} + /** * n_tty_poll - poll method for N_TTY * @tty: terminal device