[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAFLxGvwA3jjsbZ_-VN2oNUzmRzf01=2MN=SHCqv=u+57=T3Y7w@mail.gmail.com>
Date: Fri, 27 Jan 2012 13:04:37 +0100
From: richard -rw- weinberger <richard.weinberger@...il.com>
To: Alan Cox <alan@...rguk.ukuu.org.uk>
Cc: Kay Sievers <kay.sievers@...y.org>, Greg KH <gregkh@...e.de>,
stian@...ia.no, LKML <linux-kernel@...r.kernel.org>,
Linux-Arch <linux-arch@...r.kernel.org>,
user-mode-linux-devel@...ts.sourceforge.net
Subject: Re: [uml-devel] /sys/class/tty/tty0/active?
On Fri, Jan 27, 2012 at 12:51 PM, Alan Cox <alan@...rguk.ukuu.org.uk> wrote:
>> UML's console driver (arch/um/drivers/line.c) implements tty_operations.
>> The crash happens because the tty subsystem calls the driver's close()
>> function and later
>> write_room() or chars_in_buffer().
>>
>> write_room() and chars_in_buffer() fail badly because close() already
>> cleaned up the driver's private data...
>
> You don't want to do that.
That's what i thought.
>> Greg, is UML's assumption wrong that after closing the tty no call to
>> write_room() or chars_in_buffer() can happen?
>> I have no idea why systemd is able to trigger this, UML's console
>> driver is old and has always worked quite well.
>
> It's always been untrue but it's even more untrue nowdays. The tty layer
> objects are refcounted, and the code has had significant rewrites. line.c
> hidden away in uml hasn't been updated.
>
> I added a comment about 3 years ago pointing out another older change
> that was needed and that wasn't acted on either..
>
> Take a look at how all the other tty drivers use tty_port, how the ioctls
> have been supposed to work for the past few years and the callback
> changes, then use them.
Can you recommend a well-written driver?
--
Thanks,
//richard
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists