Merge tag 'tty-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty

Pull tty / serial driver fixes from Greg KH:
"Here are two tty/serial driver fixes for 6.6-rc4 that resolve some
reported regressions:

- revert a n_gsm change that ended up causing problems

- 8250_port fix for irq data

both have been in linux-next for over a week with no reported
problems"

* tag 'tty-6.6-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux"
serial: 8250_port: Check IRQ data before use

Changed files
+5 -4
drivers
tty
serial
+1 -3
drivers/tty/n_gsm.c
··· 3097 3097 gsm->has_devices = false; 3098 3098 } 3099 3099 for (i = NUM_DLCI - 1; i >= 0; i--) 3100 - if (gsm->dlci[i]) { 3100 + if (gsm->dlci[i]) 3101 3101 gsm_dlci_release(gsm->dlci[i]); 3102 - gsm->dlci[i] = NULL; 3103 - } 3104 3102 mutex_unlock(&gsm->mutex); 3105 3103 /* Now wipe the queues */ 3106 3104 tty_ldisc_flush(gsm->tty);
+4 -1
drivers/tty/serial/8250/8250_port.c
··· 1936 1936 skip_rx = true; 1937 1937 1938 1938 if (status & (UART_LSR_DR | UART_LSR_BI) && !skip_rx) { 1939 - if (irqd_is_wakeup_set(irq_get_irq_data(port->irq))) 1939 + struct irq_data *d; 1940 + 1941 + d = irq_get_irq_data(port->irq); 1942 + if (d && irqd_is_wakeup_set(d)) 1940 1943 pm_wakeup_event(tport->tty->dev, 0); 1941 1944 if (!up->dma || handle_rx_dma(up, iir)) 1942 1945 status = serial8250_rx_chars(up, status);