Return-Path: Date: Tue, 17 Jan 2017 14:57:29 +0000 From: One Thousand Gnomes To: Rob Herring Cc: Greg Kroah-Hartman , Marcel Holtmann , Jiri Slaby , Sebastian Reichel , Arnd Bergmann , "Dr . H . Nikolaus Schaller" , Peter Hurley , Andy Shevchenko , Loic Poulain , Pavel Machek , NeilBrown , Linus Walleij , linux-bluetooth@vger.kernel.org, linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org, Alan Cox Subject: Re: [PATCH v2 2/9] tty_port: allow a port to be opened with a tty that has no file handle Message-ID: <20170117145729.6c3a9413@lxorguk.ukuu.org.uk> In-Reply-To: <20170116225436.17505-3-robh@kernel.org> References: <20170116225436.17505-1-robh@kernel.org> <20170116225436.17505-3-robh@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII List-ID: On Mon, 16 Jan 2017 16:54:29 -0600 Rob Herring wrote: > From: Alan Cox > > Let us create tty objects entirely in kernel space. Untested proposal to > show why all the ideas around rewriting half the uart stack are not needed. > > With this a kernel created non file backed tty object could be used to handle > data, and set terminal modes. Not all ldiscs can cope with this as N_TTY in > particular has to work back to the fs/tty layer. > > The tty_port code is however otherwise clean of file handles as far as I can > tell as is the low level tty port write path used by the ldisc, the > configuration low level interfaces and most of the ldiscs. > > Currently you don't have any exposure to see tty hangups because those are > built around the file layer. However a) it's a fixed port so you probably > don't care about that b) if you do we can add a callback and c) you almost > certainly don't want the userspace tear down/rebuild behaviour anyway. > > This should however be sufficient if we wanted for example to enumerate all > the bluetooth bound fixed ports via ACPI and make them directly available. > It doesn't deal with the case of a user opening a port that's also kernel > opened and that would need some locking out (so it returned EBUSY if bound > to a kernel device of some kind). That needs resolving along with how you > "up" or "down" your new bluetooth device, or enumerate it while providing > the existing tty API to avoid regressions (and to debug). > > Alan > Reviewed-by: Andy Shevchenko > Reviewed-By: Sebastian Reichel > --- > Alan, Need your SoB here. Signed-off-by: Alan Cox Alan