lkml.org 
[lkml]   [2009]   [Oct]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:x86/urgent] x86: earlyprintk: Fix regression to handle serial,ttySn as 1 arg
    Commit-ID:  ea3acb199a5d7e4da1de0a4288eba993b29f33b9
    Gitweb: http://git.kernel.org/tip/ea3acb199a5d7e4da1de0a4288eba993b29f33b9
    Author: Jason Wessel <jason.wessel@windriver.com>
    AuthorDate: Thu, 24 Sep 2009 09:08:30 -0500
    Committer: Ingo Molnar <mingo@elte.hu>
    CommitDate: Thu, 1 Oct 2009 10:34:16 +0200

    x86: earlyprintk: Fix regression to handle serial,ttySn as 1 arg

    Commit c953094 ("early_printk: Allow more than one early console")
    introduced a regression in the parsing of the earlyprintk= kernel
    arguments.

    If you specify "earlyprintk=serial,ttyS0,115200" as a kernel
    argument, the "serial,ttyS" should be parsed as a single argument
    and not as "serial" and then "ttyS".

    Also update the documentation to reflect you can specify the ttyS
    directly without the "serial" argument.

    Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
    Cc: Len Brown <lenb@kernel.org>
    Cc: Greg KH <gregkh@suse.de>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    LKML-Reference: <4ABB7D5E.6000301@windriver.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>


    ---
    Documentation/kernel-parameters.txt | 1 +
    arch/x86/kernel/early_printk.c | 5 ++++-
    2 files changed, 5 insertions(+), 1 deletions(-)

    diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
    index 6fa7292..9107b38 100644
    --- a/Documentation/kernel-parameters.txt
    +++ b/Documentation/kernel-parameters.txt
    @@ -671,6 +671,7 @@ and is between 256 and 4096 characters. It is defined in the file
    earlyprintk= [X86,SH,BLACKFIN]
    earlyprintk=vga
    earlyprintk=serial[,ttySn[,baudrate]]
    + earlyprintk=ttySn[,baudrate]
    earlyprintk=dbgp[debugController#]

    Append ",keep" to not disable it when the real console
    diff --git a/arch/x86/kernel/early_printk.c b/arch/x86/kernel/early_printk.c
    index 41fd965..b9c830c 100644
    --- a/arch/x86/kernel/early_printk.c
    +++ b/arch/x86/kernel/early_printk.c
    @@ -206,8 +206,11 @@ static int __init setup_early_printk(char *buf)

    while (*buf != '\0') {
    if (!strncmp(buf, "serial", 6)) {
    - early_serial_init(buf + 6);
    + buf += 6;
    + early_serial_init(buf);
    early_console_register(&early_serial_console, keep);
    + if (!strncmp(buf, ",ttyS", 5))
    + buf += 5;
    }
    if (!strncmp(buf, "ttyS", 4)) {
    early_serial_init(buf + 4);

    \
     
     \ /
      Last update: 2009-10-01 12:03    [W:0.065 / U:0.580 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site