• Paul Mackerras's avatar
    TTY: hvc_console, fix port reference count going to zero prematurely · c019bc11
    Paul Mackerras authored
    Commit bdb498c2 "TTY: hvc_console, add tty install" took the port
    refcounting out of hvc_open()/hvc_close(), but failed to remove the
    kref_put() and tty_kref_put() calls in hvc_hangup() that were there to
    remove the extra references that hvc_open() had taken.
    
    The result was that doing a vhangup() when the current terminal was
    a hvc_console, then closing the current terminal, would end up calling
    destroy_hvc_struct() and making the port disappear entirely.  This
    meant that Fedora 17 systems would boot up but then not display the
    login prompt on the console, and attempts to open /dev/hvc0 would
    give a "No such device" error.
    
    This fixes it by removing the extra kref_put() and tty_kref_put() calls.
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    Acked-by: default avatarJiri Slaby <jslaby@suse.cz>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    c019bc11
hvc_console.c 23.8 KB