wok diff linux/stuff/channel-negative-one-maxim.patch @ rev 15295

cdrtools: remove a wrong error trigger
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri Sep 27 09:56:20 2013 +0000 (2013-09-27)
parents
children a1084fda7f23
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/linux/stuff/channel-negative-one-maxim.patch	Fri Sep 27 09:56:20 2013 +0000
     1.3 @@ -0,0 +1,38 @@
     1.4 +commit fffd6e63ea75850dafbf2ccfb38a4189f43c0282
     1.5 +Author: Maxim Levitsky <maximlevitsky@xxxxxxxxx>
     1.6 +Date:   Tue Jun 1 15:43:21 2010 +0300
     1.7 +
     1.8 +    wireless: allow to retrieve the channel set on monitor interface
     1.9 +    
    1.10 +    This will allow to preserve compatibility with userspace
    1.11 +    
    1.12 +    Signed-off-by: Maxim Levitsky <maximlevitsky@xxxxxxxxx>
    1.13 +
    1.14 +diff --git a/net/wireless/chan.c b/net/wireless/chan.c
    1.15 +index b01a6f6..09d979b 100644
    1.16 +--- a/net/wireless/chan.c
    1.17 ++++ b/net/wireless/chan.c
    1.18 +@@ -49,9 +49,12 @@ int cfg80211_set_freq(struct cfg80211_registered_device *rdev,
    1.19 + {
    1.20 + 	struct ieee80211_channel *chan;
    1.21 + 	int result;
    1.22 ++	struct wireless_dev *mon_dev = NULL;
    1.23 + 
    1.24 +-	if (wdev && wdev->iftype == NL80211_IFTYPE_MONITOR)
    1.25 ++	if (wdev && wdev->iftype == NL80211_IFTYPE_MONITOR) {
    1.26 ++		mon_dev = wdev;
    1.27 + 		wdev = NULL;
    1.28 ++	}
    1.29 + 
    1.30 + 	if (wdev) {
    1.31 + 		ASSERT_WDEV_LOCK(wdev);
    1.32 +@@ -76,5 +79,8 @@ int cfg80211_set_freq(struct cfg80211_registered_device *rdev,
    1.33 + 	if (wdev)
    1.34 + 		wdev->channel = chan;
    1.35 + 
    1.36 ++	if (mon_dev)
    1.37 ++		mon_dev->channel = chan;
    1.38 ++
    1.39 + 	return 0;
    1.40 + }
    1.41 +