linux_dsm_epyc7002/drivers/tty
Arnd Bergmann a4f642a8a3 tty: nozomi: avoid a harmless gcc warning
The nozomi wireless data driver has its own helper function to
transfer data from a FIFO, doing an extra byte swap on big-endian
architectures, presumably to bring the data back into byte-serial
order after readw() or readl() perform their implicit byteswap.

This helper function is used in the receive_data() function to
first read the length into a 32-bit variable, which causes
a compile-time warning:

drivers/tty/nozomi.c: In function 'receive_data':
drivers/tty/nozomi.c:857:9: warning: 'size' may be used uninitialized in this function [-Wmaybe-uninitialized]

The problem is that gcc is unsure whether the data was actually
read or not. We know that it is at this point, so we can replace
it with a single readl() to shut up that warning.

I am leaving the byteswap in there, to preserve the existing
behavior, even though this seems fishy: Reading the length of
the data into a cpu-endian variable should normally not use
a second byteswap on big-endian systems, unless the hardware
is aware of the CPU endianess.

There appears to be a lot more confusion about endianess in this
driver, so it probably has not worked on big-endian systems in
a long time, if ever, and I have no way to test it. It's well
possible that this driver has not been used by anyone in a while,
the last patch that looks like it was tested on the hardware is
from 2008.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-06 23:41:17 -08:00
..
hvc drivers/tty: make hvc/hvc_vio.c explicitly non-modular 2016-02-06 23:26:43 -08:00
ipwireless
serial tty: serial: 8250: Add generic port init macro 2016-02-06 23:15:53 -08:00
vt tty/vt/keyboard: use memdup_user to simplify code 2016-02-06 23:27:46 -08:00
amiserial.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
bfin_jtag_comm.c
cyclades.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
ehv_bytechan.c drivers/tty: make ehv_bytechan.c explicitly non-modular 2016-02-06 23:26:43 -08:00
goldfish.c tty: constify tty_port_operations structs 2016-02-06 23:31:08 -08:00
isicom.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
Kconfig
Makefile
metag_da.c tty/metag_da: Avoid module_init/module_exit in non-modular code 2015-06-16 14:12:31 -04:00
mips_ejtag_fdc.c ttyFDC: Fix build problems due to use of module_{init,exit} 2015-10-17 21:29:21 -07:00
moxa.c tty: Remove unused SERIAL_DO_RESTART define 2015-12-13 19:59:48 -08:00
moxa.h
mxser.c tty: constify tty_port_operations structs 2016-02-06 23:31:08 -08:00
mxser.h
n_gsm.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
n_hdlc.c TTY: n_hdlc, fix lockdep false positive 2016-02-06 23:27:46 -08:00
n_r3964.c tty: r3964: Replace/remove bogus tty lock use 2015-10-17 21:11:29 -07:00
n_tracerouter.c n_tracerouter: stop including <asm-generic/bug> 2015-10-15 00:21:10 +02:00
n_tracesink.c n_tracesink: stop including <asm-generic/bug> 2015-10-15 00:21:11 +02:00
n_tracesink.h
n_tty.c n_tty: Ignore all read data when closing 2016-01-28 14:13:44 -08:00
nozomi.c tty: nozomi: avoid a harmless gcc warning 2016-02-06 23:41:17 -08:00
pty.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
rocket_int.h tty: rocket: Remove private close_wait 2016-01-28 14:13:44 -08:00
rocket.c tty: Remove ASYNC_CLOSING 2016-01-28 14:19:12 -08:00
rocket.h
synclink_gt.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
synclink.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
synclinkmp.c tty: synclinkmp: do not ignore errors in probe() 2016-02-06 23:27:46 -08:00
sysrq.c sysrq: Fix warning in sysrq generated crash. 2015-12-29 16:29:18 -08:00
tty_audit.c tty: audit: Poison tty_audit_buf while process exits 2016-01-27 16:41:04 -08:00
tty_buffer.c tty: Unify receive_buf() code paths 2016-01-28 14:13:44 -08:00
tty_io.c tty: Fix ioctl(FIOASYNC) on hungup file 2016-01-28 11:58:02 -08:00
tty_ioctl.c tty: Use termios c_*flag macros 2016-01-28 14:13:44 -08:00
tty_ldisc.c tty: Eliminate global symbol tty_ldisc_N_TTY 2016-01-27 15:13:28 -08:00
tty_ldsem.c tty: Deinline __ldsem_down_write_nested, save 128 bytes 2015-12-13 19:59:48 -08:00
tty_mutex.c tty: Remove __lockfunc annotation from tty lock functions 2016-01-27 14:28:20 -08:00
tty_port.c tty: Remove ASYNC_CLOSING 2016-01-28 14:19:12 -08:00