Re: [PATCH] hvc_console: returning 0 from put_chars is not an error

Benjamin Herrenschmidt
2009-10-16T18:03:50Z

On Fri, 2009-10-16 at 10:33 -0500, Scott Wood wrote:
> On Fri, Oct 16, 2009 at 03:46:45PM +1100, Benjamin Herrenschmidt wrote:
> > On Thu, 2009-10-15 at 13:57 -0500, Scott Wood wrote:
> > > I'd say the dropping approach is quite undesirable (significant
> > > potential for output loss unless the buffer is huge), unless there's
> > > simply no way to safely spin. Hopefully there are no such backends, but
> > > if there are perhaps we can have them return some special code to
> > > indicate that.
> >
> > Should never spin.
>
> Why is a hypervisor console different than a serial port in this regard?

Ah sorry, yeah, struct console can I suppose, it's the tty that
shouldn't.

> > Best is to keep a copy in the upper layer of the pending data and throttle
> > (not accept further data from tty layer) until we have managed to flush
> > out that "pending" buffer.
>
> The data isn't coming from the tty layer -- we're talking about printk. How
> do you throttle that without spinning?
>
> I agree that it shouldn't spin when handling tty I/O.

Ben.