• Kay Sievers's avatar
    printk: flush continuation lines immediately to console · 084681d1
    Kay Sievers authored
    Continuation lines are buffered internally, intended to merge the
    chunked printk()s into a single record, and to isolate potentially
    racy continuation users from usual terminated line users.
    
    This though, has the effect that partial lines are not printed to
    the console in the moment they are emitted. In case the kernel
    crashes in the meantime, the potentially interesting printed
    information would never reach the consoles.
    
    Here we share the continuation buffer with the console copy logic,
    and partial lines are always immediately flushed to the available
    consoles. They are still buffered internally to improve the
    readability and integrity of the messages and minimize the amount
    of needed record headers to store.
    Signed-off-by: default avatarKay Sievers <kay@vrfy.org>
    Tested-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    Acked-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    084681d1
printk.c 64.7 KB