Hi all,

After merging the net tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c: In function 
'rtw_cfg80211_add_monitor_if':
drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:2670:10: error: 'struct 
net_device' has no member named 'destructor'
  mon_ndev->destructor = rtw_ndev_destructor;
          ^

Caused by commit

  cf124db566e6 ("net: Fix inconsistent teardown and release of private netdev 
state.")

from the net tree interacting with commit

  554c0a3abf21 ("staging: Add rtl8723bs sdio wifi driver"

from Linus' tree (v4.12-rc1).

I applied the following merge fix patch for today.

From: Stephen Rothwell <s...@canb.auug.org.au>
Date: Thu, 8 Jun 2017 09:49:26 +1000
Subject: [PATCH] net: fix up for "Fix inconsistent teardown and release of 
private netdev state"

Signed-off-by: Stephen Rothwell <s...@canb.auug.org.au>
---
 drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 3 ++-
 drivers/staging/rtl8723bs/os_dep/os_intfs.c       | 2 --
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c 
b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
index 36c3189fc4b7..bd4352fe2de3 100644
--- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
+++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
@@ -2667,7 +2667,8 @@ static int rtw_cfg80211_add_monitor_if (struct adapter 
*padapter, char *name, st
        mon_ndev->type = ARPHRD_IEEE80211_RADIOTAP;
        strncpy(mon_ndev->name, name, IFNAMSIZ);
        mon_ndev->name[IFNAMSIZ - 1] = 0;
-       mon_ndev->destructor = rtw_ndev_destructor;
+       mon_ndev->needs_free_netdev = true;
+       mon_ndev->priv_destructor = rtw_ndev_destructor;
 
        mon_ndev->netdev_ops = &rtw_cfg80211_monitor_if_ops;
 
diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c 
b/drivers/staging/rtl8723bs/os_dep/os_intfs.c
index f83cfc76505c..021589913681 100644
--- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c
+++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c
@@ -1207,8 +1207,6 @@ void rtw_ndev_destructor(struct net_device *ndev)
 
        if (ndev->ieee80211_ptr)
                kfree((u8 *)ndev->ieee80211_ptr);
-
-       free_netdev(ndev);
 }
 
 void rtw_dev_unload(struct adapter *padapter)
-- 
2.11.0

-- 
Cheers,
Stephen Rothwell

Reply via email to