• Guy Martin's avatar
    parisc : Remove broken line wrapping handling pdc_iodc_print() · fbea6684
    Guy Martin authored
    Remove the broken line wrapping handling in pdc_iodc_print().
    It is broken in 3 ways :
      - It doesn't keep track of the current screen position, it just
        assumes that the new buffer will be printed at the begining of the
        screen.
      - It doesn't take in account that non printable characters won't
        increase the current position on the screen.
      - And last but not least, it triggers a kernel panic if a backspace
        is the first char in the provided buffer :
    
     Backtrace:
      [<0000000040128ec4>] pdc_console_write+0x44/0x78
      [<0000000040128f18>] pdc_console_tty_write+0x20/0x38
      [<000000004032f1ac>] n_tty_write+0x2a4/0x550
      [<000000004032b158>] tty_write+0x1e0/0x2d8
      [<00000000401bb420>] vfs_write+0xb8/0x188
      [<00000000401bb630>] sys_write+0x68/0xb8
      [<0000000040104eb8>] syscall_exit+0x0/0x14
    
    Most terminals handle the line wrapping just fine. I've confirmed that
    it works correctly on a C8000 with both vga and serial output.
    Signed-off-by: default avatarGuy Martin <gmsoft@tuxicoman.be>
    Cc: Stable Tree <stable@kernel.org>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@suse.de>
    fbea6684
firmware.c 42 KB