Re: [PATCH 120/190] Revert "tty: atmel_serial: fix a potential NULL pointer dereference"

Jiri Slaby
2021-04-22T05:18:23Z

On 21. 04. 21, 14:59, Greg Kroah-Hartman wrote:
> This reverts commit c85be041065c0be8bc48eda4c45e0319caf1d0e5.
>
> Commits from @umn.edu addresses have been found to be submitted in "bad
> faith" to try to test the kernel community's ability to review "known
> malicious" changes. The result of these submissions can be found in a
> paper published at the 42nd IEEE Symposium on Security and Privacy
> entitled, "Open Source Insecurity: Stealthily Introducing
> Vulnerabilities via Hypocrite Commits" written by Qiushi Wu (University
> of Minnesota) and Kangjie Lu (University of Minnesota).
>
> Because of this, all submissions from this group must be reverted from
> the kernel tree and will need to be re-reviewed again to determine if
> they actually are a valid fix. Until that work is complete, remove this
> change to ensure that no problems are being introduced into the
> codebase.
>
> Cc: Kangjie Lu <kjlu@umn.edu>
> Cc: Richard Genoud <richard.genoud@gmail.com>
> Cc: stable <stable@vger.kernel.org>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> ---
> drivers/tty/serial/atmel_serial.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/tty/serial/atmel_serial.c b/drivers/tty/serial/atmel_serial.c
> index a24e5c2b30bc..9786d8e5f04f 100644
> --- a/drivers/tty/serial/atmel_serial.c
> +++ b/drivers/tty/serial/atmel_serial.c
> @@ -1256,10 +1256,6 @@ static int atmel_prepare_rx_dma(struct uart_port *port)
> sg_dma_len(&atmel_port->sg_rx)/2,
> DMA_DEV_TO_MEM,
> DMA_PREP_INTERRUPT);
> - if (!desc) {
> - dev_err(port->dev, "Preparing DMA cyclic failed\n");
> - goto chan_err;
> - }

I cannot find anything malicious in the original fix:
* port->dev is valid for dev_err
* dmaengine_prep_dma_cyclic returns NULL in case of error
* chan_err invokes atmel_release_rx_dma which undoes the previous
initialization code.

Hence a NACK from me for the revert.

> desc->callback = atmel_complete_rx_dma;
> desc->callback_param = port;
> atmel_port->desc_rx = desc;
>

--
js
suse labs