[PATCH] staging: r8188eu: Add _enter_critical_mutex() error handling

Dan Carpenter dan.carpenter at oracle.com
Sat Oct 10 15:04:34 UTC 2015


On Sat, Oct 10, 2015 at 01:37:47AM +0300, Alexey Khoroshilov wrote:
> _enter_critical_mutex() is a simple call to mutex_lock_interruptible(),
> but there is no error handling code for it.
> 
> The patch removes wrapper _enter_critical_mutex() and
> adds error handling for mutex_lock_interruptible().
> 
> Found by Linux Driver Verification project (linuxtesting.org).
> 
> Signed-off-by: Alexey Khoroshilov <khoroshilov at ispras.ru>
> ---
>  drivers/staging/rtl8188eu/core/rtw_mlme_ext.c     | 5 +++--
>  drivers/staging/rtl8188eu/include/osdep_service.h | 9 ---------
>  drivers/staging/rtl8188eu/os_dep/os_intfs.c       | 3 ++-
>  drivers/staging/rtl8188eu/os_dep/usb_ops_linux.c  | 5 ++++-
>  4 files changed, 9 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c b/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
> index 935b48eef8b1..4e9312f0e902 100644
> --- a/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
> +++ b/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
> @@ -271,7 +271,8 @@ static s32 dump_mgntframe_and_wait_ack(struct adapter *padapter,
>  	if (padapter->bSurpriseRemoved || padapter->bDriverStopped)
>  		return -1;
>  
> -	_enter_critical_mutex(&pxmitpriv->ack_tx_mutex, NULL);
> +	if (!mutex_lock_interruptible(&pxmitpriv->ack_tx_mutex))
> +		return _FAIL;

This is reversed.  mutex_lock_interruptible() returns -EINTR on failure.
The rest of this patch is correct.

regards,
dan carpenter




More information about the devel mailing list