usb/serial/ssu100: uninitialized variable
Subsystems (3)
PATCH 1/1 usb/serial/ssu100: uninitialized variable
GCC complains about the original code, because we're using an unintialized variable "flag". I think we should be setting flag based on the UART_LSR_BRK_ERROR_BITS but I'm not sure... I don't have this hardware. Probably passing TTY_NORMAL is better than the current code?
drivers/usb/serial/ssu100.c +2 -3
@@ -563,7 +563,6 @@ static int ssu100_process_packet(struct tty_struct *tty, char *packet, int len) { int i; -char flag;char *ch;dbg ("%s - port %d" , __func__, port->number);
@@ -597,10 +596,10 @@ static int ssu100_process_packet(struct tty_struct *tty,if (port->port.console && port->sysrq) {for (i =0 ; i < len; i++, ch++) {if (!usb_serial_handle_sysrq_char (tty, port, *ch)) -tty_insert_flip_char (tty, *ch, flag); +tty_insert_flip_char (tty, *ch,TTY_NORMAL ); } }else -tty_insert_flip_string_fixed_flag (tty, ch, flag, len); +tty_insert_flip_string_fixed_flag (tty, ch,TTY_NORMAL , len);return len; }
Quoted 6 lines
GCC complains about the original code, because we're using an unintialized variable "flag". I think we should be setting flag based on the
UART_LSR_BRK_ERROR_BITSbut I'm not sure... I don't have this hardware. Probably passingTTY_NORMALis better than the current code?
I took that function from ftdi_sio and stripped a lot out of it while developing the driver. I see I missed adding back in the logic dealing with setting flag correctly. I'll work up a patch to properly deal with it.
Signature · 1 line
Bill