USB: storage: ums-realtek: fix error code in rts51x_read_mem()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 4 Mar 2022 07:35:04 +0000 (10:35 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 15 Mar 2022 17:21:25 +0000 (18:21 +0100)
The rts51x_read_mem() function should return negative error codes.
Currently if the kmalloc() fails it returns USB_STOR_TRANSPORT_ERROR (3)
which is treated as success by the callers.

Fixes: 065e60964e29 ("ums_realtek: do not use stack memory for DMA")
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Link: https://lore.kernel.org/r/20220304073504.GA26464@kili
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/storage/realtek_cr.c

index 3789698d9d3c6431096f0320b280014b6ca4477b..0c423916d7bfa4e325243ea4b0e0b9ce8854a535 100644 (file)
@@ -365,7 +365,7 @@ static int rts51x_read_mem(struct us_data *us, u16 addr, u8 *data, u16 len)
 
        buf = kmalloc(len, GFP_NOIO);
        if (buf == NULL)
-               return USB_STOR_TRANSPORT_ERROR;
+               return -ENOMEM;
 
        usb_stor_dbg(us, "addr = 0x%x, len = %d\n", addr, len);