Re: [PATCH] mos7840: fix chars_in_buffer() return value

From: Johan Hovold
Date: Fri Sep 30 2016 - 07:04:31 EST


On Fri, Sep 30, 2016 at 12:00:30AM +0300, Stas Sergeev wrote:
> 29.09.2016 13:09, Johan Hovold ÐÐÑÐÑ:
> > On Sat, Sep 24, 2016 at 06:00:57PM +0300, Stas Sergeev wrote:
> >> The TIOCOUTQ ioctl calls chars_in_buffer(), and some apps depend on
> >> a correct behaviour of that.
> >> mos7840 implements it wrongly: if you write just one char, TIOCOUTQ
> >> will return 32.
> >> This patch should fix it by accounting the number of chars actually
> >> written.
> >> This patch, unfortunately, misses the Tested-by tag.
> >> The reporter didn't test it, and I don't have the hardware in question.

> > Why do you think the driver returns 32b in chars_in_buffer after writing
> > a single character?

> Hi Johan, this actually came from this ancient bug report:
> https://bugzilla.kernel.org/show_bug.cgi?id=45791
> I was trying to add you back then and now, but your e-mail
> doesn't seem to be registered in a bug tracker.

Yeah, Greg does good job at direction bug reports to the usb mailing
list.

> The code in question was different when I submitted the
> original patch:
> https://bugzilla.kernel.org/attachment.cgi?id=77241
> Maybe the bug was since fixed.

It does seem to have been addressed by commit 5c263b92f828 ("usb:
serial: mos7840: Fixup mos7840_chars_in_buffer()") around the time of
your original report in 2012.

> In that case sorry for the noise.

No worries.

Thanks,
Johan