From: Paul Mackerras <hidden> Date: 2012-11-14 08:15:47
Commit bdb498c20040 "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: Paul Mackerras <redacted>
Cc: stable@vger.kernel.org
---
drivers/tty/hvc/hvc_console.c | 7 -------
1 file changed, 7 deletions(-)
Commit bdb498c20040 "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.
From: Paul Mackerras <hidden> Date: 2012-11-14 23:02:57
On Wed, Nov 14, 2012 at 12:54:07PM -0800, Greg KH wrote:
On Thu, Nov 15, 2012 at 07:48:17AM +1100, Benjamin Herrenschmidt wrote:
quoted
On Wed, 2012-11-14 at 07:09 -0800, Greg KH wrote:
quoted
quoted
So who's merging it ?
Give me a chance to at least wake up please :)
Sure ;-) Just asking since I'm about to cook up a powerpc batch :-)
It's now in my tree, and will get to Linus in time for 3.7.
Turns out I stuffed up the commit message a bit, I talk about kref_put
and tty_kref_put when I should be talking about tty_port_put. If
there is still a chance to update the commit message, that would be
good. The patch itself is correct.
quoted
quoted
I will.
Thanks ! It should go into stable 3.6 as well.
Why? The offending patch didn't show up until 3.7-rc1.
Yes. I had thought it was in 3.6 but it isn't.
Paul.