[PATCH v8 19/19] staging: r8188eu: remove usb_vendor_req_mutex
flat view
STALE1868d
From: Fabio M. De Francesco <hidden>
Date: 2021-09-19 23:56:51
Also in:
lkml
Subsystem:
staging subsystem, the rest · Maintainers:
Greg Kroah-Hartman, Linus Torvalds
Revision v8 (3 revisions archived).
Revisions (3)
- v6
- v7 [diff against previous]
- v8 current [diff against previous]
From: Pavel Skripkin <redacted>
This mutex was used to protect shared buffer for USB requests. Since
buffer was removed in previous patch we can remove this mutex as well.
Co-developed-by: Fabio M. De Francesco <redacted>
Signed-off-by: Fabio M. De Francesco <redacted>
Signed-off-by: Pavel Skripkin <redacted>
---
drivers/staging/r8188eu/hal/usb_ops_linux.c | 18 ++++-------------
drivers/staging/r8188eu/os_dep/usb_intf.c | 22 ++-------------------
2 files changed, 6 insertions(+), 34 deletions(-)
diff --git a/drivers/staging/r8188eu/hal/usb_ops_linux.c b/drivers/staging/r8188eu/hal/usb_ops_linux.c
index 75500c28d6e6..19a37fd6a4b4 100644
--- a/drivers/staging/r8188eu/hal/usb_ops_linux.c
+++ b/drivers/staging/r8188eu/hal/usb_ops_linux.c@@ -16,8 +16,6 @@ static int usb_read(struct intf_hdl *intfhdl, u16 value, void *data, u8 size) int status; u8 io_buf[4]; - mutex_lock(&dvobjpriv->usb_vendor_req_mutex); - if (adapt->bSurpriseRemoved || adapt->pwrctrlpriv.pnp_bstop_trx) return -EPERM;
@@ -37,7 +35,7 @@ static int usb_read(struct intf_hdl *intfhdl, u16 value, void *data, u8 size) * exist or is not enabled. */ adapt->bSurpriseRemoved = true; - goto mutex_unlock; + return status; } if (status < 0) {
@@ -47,15 +45,12 @@ static int usb_read(struct intf_hdl *intfhdl, u16 value, void *data, u8 size) if (rtw_inc_and_chk_continual_urb_error(dvobjpriv)) adapt->bSurpriseRemoved = true; - goto mutex_unlock; + return status; } rtw_reset_continual_urb_error(dvobjpriv); memcpy(data, io_buf, size); -mutex_unlock: - mutex_unlock(&dvobjpriv->usb_vendor_req_mutex); - return status; }
@@ -67,8 +62,6 @@ static int usb_write(struct intf_hdl *intfhdl, u16 value, void *data, u8 size) int status; u8 io_buf[VENDOR_CMD_MAX_DATA_LEN]; - mutex_lock(&dvobjpriv->usb_vendor_req_mutex); - if (adapt->bSurpriseRemoved || adapt->pwrctrlpriv.pnp_bstop_trx) return -EPERM;
@@ -89,7 +82,7 @@ static int usb_write(struct intf_hdl *intfhdl, u16 value, void *data, u8 size) * exist or is not enabled. */ adapt->bSurpriseRemoved = true; - goto mutex_unlock; + return status; } if (status < 0) {
@@ -99,14 +92,11 @@ static int usb_write(struct intf_hdl *intfhdl, u16 value, void *data, u8 size) if (rtw_inc_and_chk_continual_urb_error(dvobjpriv)) adapt->bSurpriseRemoved = true; - goto mutex_unlock; + return status; } rtw_reset_continual_urb_error(dvobjpriv); -mutex_unlock: - mutex_unlock(&dvobjpriv->usb_vendor_req_mutex); - return status; }
diff --git a/drivers/staging/r8188eu/os_dep/usb_intf.c b/drivers/staging/r8188eu/os_dep/usb_intf.c
index 5ab42d55207f..2e6e6070c304 100644
--- a/drivers/staging/r8188eu/os_dep/usb_intf.c
+++ b/drivers/staging/r8188eu/os_dep/usb_intf.c@@ -73,21 +73,9 @@ static struct rtw_usb_drv rtl8188e_usb_drv = { static struct rtw_usb_drv *usb_drv = &rtl8188e_usb_drv; -static u8 rtw_init_intf_priv(struct dvobj_priv *dvobj) -{ - mutex_init(&dvobj->usb_vendor_req_mutex); - return _SUCCESS; -} - -static void rtw_deinit_intf_priv(struct dvobj_priv *dvobj) -{ - mutex_destroy(&dvobj->usb_vendor_req_mutex); -} - static struct dvobj_priv *usb_dvobj_init(struct usb_interface *usb_intf) { int i; - int status = _FAIL; struct dvobj_priv *pdvobjpriv; struct usb_host_config *phost_conf; struct usb_config_descriptor *pconf_desc;
@@ -146,19 +134,13 @@ static struct dvobj_priv *usb_dvobj_init(struct usb_interface *usb_intf) DBG_88E("NON USB_SPEED_HIGH\n"); } - if (rtw_init_intf_priv(pdvobjpriv) == _FAIL) - goto free_dvobj; - /* 3 misc */ sema_init(&pdvobjpriv->usb_suspend_sema, 0); rtw_reset_continual_urb_error(pdvobjpriv); usb_get_dev(pusbd); - status = _SUCCESS; - -free_dvobj: - if (status != _SUCCESS && pdvobjpriv) { + if (pdvobjpriv) { usb_set_intfdata(usb_intf, NULL); kfree(pdvobjpriv); pdvobjpriv = NULL;
@@ -188,7 +170,7 @@ static void usb_dvobj_deinit(struct usb_interface *usb_intf) usb_reset_device(interface_to_usbdev(usb_intf)); } } - rtw_deinit_intf_priv(dvobj); + kfree(dvobj); }
--
2.33.0