Re: [PATCH v2 1/2] USB: serial: ark3116: Remove unused TIOCSSERIAL ioctl case.

From: Johan Hovold
Date: Mon Jan 08 2018 - 10:29:05 EST


On Mon, Jan 08, 2018 at 11:33:32AM +0100, Oliver Neukum wrote:
> Am Samstag, den 06.01.2018, 20:14 +0300 schrieb Mikhail Zaytsev:
> > The patch removes unused TIOCSSERIAL ioctl case and adds the default block
> > to the switch. This will make the ioctl return -ENOTTY to user space (e.g.
> > setserial), because TIOCSSERIAL really isn't supported for these devices
> > currently.
>
> Hi,
>
> this will break software that is now running on these devices,
> won't it? Do you know why those devices basically ignore the
> ioctl?

Yeah, that was my initial reactions as well, but then again, any sane
user space cannot rely on these ioctl being implemented for all tty
devices.

I did some digging now and these (dummy) ioctl implementations where
added by commit 2f430b4bbae7 ("USB: ark3116: Add TIOCGSERIAL and
TIOCSSERIAL ioctl calls.") back in 2006. This in turn appears to have
been triggered by a change in a user space tool, wvdial, which started
erroring out if either was missing.

I found a couple of bug reports about that through google, and looking
at the wvstreams (library) code now, it looks like the issue has indeed
been resolved by handling errors more gracefully (e.g. just logging
them).

So I'm willing to give this a try, and if anyone complains later we add
back (or implement) TIOCSSERIAL.

Sounds reasonable?

Thanks,
Johan