staging: gpib: Add missing mutex unlock in ni usb driver
PATCH v3 1/1 staging: gpib: Add missing mutex unlock in ni usb driver
When the buffer allocation for return data in ni_usb_write() fails we were returning without unlocking the addressed_transfer_lock.
Add the unlock call.
This was detected by smatch:
New smatch warnings:drivers/staging/gpib/ni_usb/ni_usb_gpib.c:837 ni_usb_write() warn: inconsistent returns '&ni_priv->addressed_transfer_lock'.
Reported-by kernel test robot <[email protected]>
Reported-by Dan Carpenter <[email protected]>
Signed-off-by Dave Penkler <[email protected]>
--- drivers/staging/gpib/ni_usb/ni_usb_gpib.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/staging/gpib/ni_usb/ni_usb_gpib.c +3 -1
@@ -783,8 +783,10 @@ static int ni_usb_write(gpib_board_t *board, uint8_t *buffer, size_t length, } in_data =kmalloc (in_data_length,GFP_KERNEL ); -if (!in_data) +if (!in_data) { +mutex_unlock (&ni_priv->addressed_transfer_lock);return -ENOMEM ; + } retval =ni_usb_receive_bulk_msg (ni_priv, in_data, in_data_length, &usb_bytes_read,ni_usb_timeout_msecs (board->usec_timeout),1 );
Signature · 1 line
2.47.1