diff options
-rw-r--r-- | arch/um/drivers/line.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c index 002d4a968ae6..9ffade87a8cf 100644 --- a/arch/um/drivers/line.c +++ b/arch/um/drivers/line.c | |||
@@ -509,8 +509,10 @@ int setup_one_line(struct line *lines, int n, char *init, | |||
509 | *error_out = "Failed to allocate memory"; | 509 | *error_out = "Failed to allocate memory"; |
510 | return -ENOMEM; | 510 | return -ENOMEM; |
511 | } | 511 | } |
512 | if (line->valid) | 512 | if (line->valid) { |
513 | tty_unregister_device(driver, n); | 513 | tty_unregister_device(driver, n); |
514 | kfree(line->init_str); | ||
515 | } | ||
514 | line->init_str = new; | 516 | line->init_str = new; |
515 | line->valid = 1; | 517 | line->valid = 1; |
516 | err = parse_chan_pair(new, line, n, opts, error_out); | 518 | err = parse_chan_pair(new, line, n, opts, error_out); |