tty: The big operations rework
- Operations are now a shared const function block as with most other Linux
objects
- Introduce wrappers for some optional functions to get consistent behaviour
- Wrap put_char which used to be patched by the tty layer
- Document which functions are needed/optional
- Make put_char report success/fail
- Cache the driver->ops pointer in the tty as tty->ops
- Remove various surplus lock calls we no longer need
- Remove proc_write method as noted by Alexey Dobriyan
- Introduce some missing sanity checks where certain driver/ldisc
combinations would oops as they didn't check needed methods were present
[
[email protected]: fix fs/compat_ioctl.c build]
[
[email protected]: fix isicom]
[
[email protected]: fix arch/ia64/hp/sim/simserial.c build]
[
[email protected]: fix kgdb]
Signed-off-by: Alan Cox <[email protected]>
Acked-by: Greg Kroah-Hartman <[email protected]>
Cc: Jason Wessel <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>