diff options
author | Salah Triki | 2016-05-04 05:42:48 +0200 |
---|---|---|
committer | Greg Kroah-Hartman | 2016-06-19 04:49:02 +0200 |
commit | ec06d48f2443a681ff02d353bd188002d0df18f9 (patch) | |
tree | ee0f89c0e3a6275033928eb86eedb8bd52c8ff1c /drivers | |
parent | staging: rtl8192u: propagate errors in write_nic_word (diff) | |
download | kernel-qcow2-linux-ec06d48f2443a681ff02d353bd188002d0df18f9.tar.gz kernel-qcow2-linux-ec06d48f2443a681ff02d353bd188002d0df18f9.tar.xz kernel-qcow2-linux-ec06d48f2443a681ff02d353bd188002d0df18f9.zip |
staging: rtl8192u: propagate errors in write_nic_dword
Propagate errors from kzalloc and usb_control_msg and change the
return type of write_nic_dword from void to int.
Signed-off-by: Salah Triki <salah.triki@acm.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/rtl8192u/r8192U.h | 2 | ||||
-rw-r--r-- | drivers/staging/rtl8192u/r8192U_core.c | 10 |
2 files changed, 8 insertions, 4 deletions
diff --git a/drivers/staging/rtl8192u/r8192U.h b/drivers/staging/rtl8192u/r8192U.h index 27f9aa50943a..eb0c35178dd7 100644 --- a/drivers/staging/rtl8192u/r8192U.h +++ b/drivers/staging/rtl8192u/r8192U.h @@ -1132,7 +1132,7 @@ int read_nic_word(struct net_device *dev, int x, u16 *data); int write_nic_byte(struct net_device *dev, int x, u8 y); int write_nic_byte_E(struct net_device *dev, int x, u8 y); int write_nic_word(struct net_device *dev, int x, u16 y); -void write_nic_dword(struct net_device *dev, int x, u32 y); +int write_nic_dword(struct net_device *dev, int x, u32 y); void force_pci_posting(struct net_device *dev); void rtl8192_rtx_disable(struct net_device *); diff --git a/drivers/staging/rtl8192u/r8192U_core.c b/drivers/staging/rtl8192u/r8192U_core.c index 10eeb1c7ce83..646049d5d628 100644 --- a/drivers/staging/rtl8192u/r8192U_core.c +++ b/drivers/staging/rtl8192u/r8192U_core.c @@ -356,7 +356,7 @@ int write_nic_word(struct net_device *dev, int indx, u16 data) } -void write_nic_dword(struct net_device *dev, int indx, u32 data) +int write_nic_dword(struct net_device *dev, int indx, u32 data) { int status; @@ -365,7 +365,7 @@ void write_nic_dword(struct net_device *dev, int indx, u32 data) u32 *usbdata = kzalloc(sizeof(data), GFP_KERNEL); if (!usbdata) - return; + return -ENOMEM; *usbdata = data; status = usb_control_msg(udev, usb_sndctrlpipe(udev, 0), @@ -375,9 +375,13 @@ void write_nic_dword(struct net_device *dev, int indx, u32 data) kfree(usbdata); - if (status < 0) + if (status < 0) { netdev_err(dev, "write_nic_dword TimeOut! status: %d\n", status); + return status; + } + + return 0; } |