2012-02-25 17:17:35

by Larry Finger

[permalink] [raw]
Subject: [PATCH 0/2] staging: r8712u: Fix two regressions

This patch set fixes regressions introduced in kernel 3.2.

Signed-off-by: Larry Finger <[email protected]>
---

Larry Finger (2):
staging: r8712u: Fix regression introduced by commit a5ee652
staging: r8712u: Fix regression caused by commit 8c213fa

drivers/staging/rtl8712/os_intfs.c | 5 -----
drivers/staging/rtl8712/usb_intf.c | 5 +++++
2 files changed, 5 insertions(+), 5 deletions(-)

--
1.7.7


2012-02-25 17:17:41

by Larry Finger

[permalink] [raw]
Subject: [PATCH 2/2] staging: r8712u: Fix regression caused by commit 8c213fa

In commit 8c213fa, the command to release the firmware was placed
in the wrong routine. With NetworkManager, problems were rare, but
when using wicd as the network control, there is a problem as shown
in https://bugs.archlinux.org/task/27996#comment89833.

Signed-off-by: Larry Finger <[email protected]>
---
drivers/staging/rtl8712/os_intfs.c | 3 ---
drivers/staging/rtl8712/usb_intf.c | 5 +++++
2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/rtl8712/os_intfs.c b/drivers/staging/rtl8712/os_intfs.c
index 4cf175f..7bbd53a 100644
--- a/drivers/staging/rtl8712/os_intfs.c
+++ b/drivers/staging/rtl8712/os_intfs.c
@@ -475,9 +475,6 @@ static int netdev_close(struct net_device *pnetdev)
r8712_free_assoc_resources(padapter);
/*s2-4.*/
r8712_free_network_queue(padapter);
- release_firmware(padapter->fw);
- /* never exit with a firmware callback pending */
- wait_for_completion(&padapter->rtl8712_fw_ready);
return 0;
}

diff --git a/drivers/staging/rtl8712/usb_intf.c b/drivers/staging/rtl8712/usb_intf.c
index fe0e2ff..e01fe14 100644
--- a/drivers/staging/rtl8712/usb_intf.c
+++ b/drivers/staging/rtl8712/usb_intf.c
@@ -30,6 +30,7 @@

#include <linux/usb.h>
#include <linux/module.h>
+#include <linux/firmware.h>

#include "osdep_service.h"
#include "drv_types.h"
@@ -620,6 +621,10 @@ static void r871xu_dev_remove(struct usb_interface *pusb_intf)
struct _adapter *padapter = netdev_priv(pnetdev);
struct usb_device *udev = interface_to_usbdev(pusb_intf);

+ if (padapter->fw_found)
+ release_firmware(padapter->fw);
+ /* never exit with a firmware callback pending */
+ wait_for_completion(&padapter->rtl8712_fw_ready);
usb_set_intfdata(pusb_intf, NULL);
if (padapter) {
if (drvpriv.drv_registered == true)
--
1.7.7

2012-02-25 18:48:08

by Dan Carpenter

[permalink] [raw]
Subject: Re: [PATCH 2/2] staging: r8712u: Fix regression caused by commit 8c213fa

On Sat, Feb 25, 2012 at 11:17:15AM -0600, Larry Finger wrote:
> In commit 8c213fa, the command to release the firmware was placed
> in the wrong routine. With NetworkManager, problems were rare, but
> when using wicd as the network control, there is a problem as shown
> in https://bugs.archlinux.org/task/27996#comment89833.
>

This changelog is pretty rubbish.

1) The subject is rubbish.
2) Which commit was 8c213fa? Write it as 8c213fa "staging: r8712u:
Use asynchronous firmware loading". Some of us are really old and
our memory is not good anymore, so we don't know what you're talking
about if you only use the commit id.
3) A link to the bug is good, but please at least put a basic
description of the bug into the changelog itself.

regards,
dan carpenter



Attachments:
(No filename) (771.00 B)
signature.asc (836.00 B)
Digital signature
Download all attachments