rpms/kernel/devel kernel.spec, 1.718, 1.719 linux-2.6-wireless-pending.patch, 1.56, 1.57
John W. Linville (linville)
fedora-extras-commits at redhat.com
Fri Jun 27 18:13:16 UTC 2008
- Previous message (by thread): rpms/rdma/F-9 rdma-90-rdma.rules, NONE, 1.1 rdma-fixup-mtrr.awk, NONE, 1.1 rdma.conf, NONE, 1.1 rdma.init, NONE, 1.1 rdma.spec, NONE, 1.1
- Next message (by thread): rpms/libtirpc/devel libtirpc-0.1.8-superH-support.patch, NONE, 1.1 libtirpc.spec, 1.27, 1.28
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: linville
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv29133
Modified Files:
kernel.spec linux-2.6-wireless-pending.patch
Log Message:
Upstream wireless updates from 2008-06-27
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.718
retrieving revision 1.719
diff -u -r1.718 -r1.719
--- kernel.spec 27 Jun 2008 15:12:40 -0000 1.718
+++ kernel.spec 27 Jun 2008 18:12:26 -0000 1.719
@@ -1787,6 +1787,10 @@
%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
%changelog
+* Fri Jun 27 2008 John W. Linville <linville at redhat.com>
+- Upstream wireless updates from 2008-06-27
+ (http://marc.info/?l=linux-wireless&m=121458164930953&w=2)
+
* Thu Jun 26 2008 Dave Jones <davej at redhat.com>
- Print out modules list when we hit soft lockup.
linux-2.6-wireless-pending.patch:
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.56 -r 1.57 linux-2.6-wireless-pending.patch
Index: linux-2.6-wireless-pending.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-wireless-pending.patch,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- linux-2.6-wireless-pending.patch 25 Jun 2008 20:02:57 -0000 1.56
+++ linux-2.6-wireless-pending.patch 27 Jun 2008 18:12:26 -0000 1.57
@@ -1,3 +1,1105 @@
+commit ff28bd94e307c67abb1bccda5d3a9018bd798e08
+Author: John W. Linville <linville at tuxdriver.com>
+Date: Fri Jun 27 10:27:47 2008 -0400
+
+ wireless: remove RFKILL_STATE_HARD_BLOCKED warnings
+
+ CC [M] drivers/net/wireless/b43/rfkill.o
+ drivers/net/wireless/b43/rfkill.c: In function âb43_rfkill_soft_toggleâ:
+ drivers/net/wireless/b43/rfkill.c:90: warning: enumeration value âRFKILL_STATE_HARD_BLOCKEDâ not handled in switch
+
+ CC [M] drivers/net/wireless/b43legacy/rfkill.o
+ drivers/net/wireless/b43legacy/rfkill.c: In function âb43legacy_rfkill_soft_toggleâ:
+ drivers/net/wireless/b43legacy/rfkill.c:92: warning: enumeration value âRFKILL_STATE_HARD_BLOCKEDâ not handled in switch
+
+ CC [M] drivers/net/wireless/iwlwifi/iwl-rfkill.o
+ drivers/net/wireless/iwlwifi/iwl-rfkill.c: In function âiwl_rfkill_soft_rf_killâ:
+ drivers/net/wireless/iwlwifi/iwl-rfkill.c:56: warning: enumeration value âRFKILL_STATE_HARD_BLOCKEDâ not handled in switch
+
+ Also handle RFKILL_STATE_{ON,OFF} -> RFKILL_STATE_{UNBLOCKED,SOFT_BLOCKED}
+ conversion since I'm already here...
+
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit d195a2ca46ec50e3b5c045a36d1defb6e04cc6b7
+Author: John W. Linville <linville at tuxdriver.com>
+Date: Fri Jun 27 09:31:29 2008 -0400
+
+ ath5k: remove now unused variable declared in ath5k_tx
+
+ CC [M] drivers/net/wireless/ath5k/base.o
+ drivers/net/wireless/ath5k/base.c: In function âath5k_txâ:
+ drivers/net/wireless/ath5k/base.c:2598: warning: unused variable âinfoâ
+
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 03f93c3d4c8aa9ed2e2b0a949ece658053527d71
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Wed Jun 25 14:36:27 2008 +0300
+
+ mac80211: fix tx fragmentation
+
+ This patch fixes TX fragmentation caused by
+ tx handlers reordering and 'tx info to cb' patches
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 59959a6150c8af737898e83f727e824dbed7b0fa
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Thu Jun 26 19:59:56 2008 +0200
+
+ mac80211: make workqueue freezable
+
+ This patch makes the mac80211 workqueue freezable making it
+ interact a bit better with system suspend and not try to ping
+ the AP while the hardware is down.
+
+ This doesn't really help with implementing proper suspend in
+ any way but makes some bad things trigger less.
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit e292c737fc57d3ca718056f3308c725c8e541729
+Author: Pavel Machek <pavel at suse.cz>
+Date: Wed Jun 25 12:25:53 2008 +0200
+
+ wireless: Small cleanups
+
+ Small whitespace cleanups for wireless drivers
+
+ Signed-off-by: Pavel Machek <pavel at suse.cz>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit b973e42eb25036a2672db7f7749f6989ab10479c
+Author: Randy Dunlap <randy.dunlap at oracle.com>
+Date: Tue Jun 24 21:02:46 2008 -0700
+
+ iwlwifi: fix build for CONFIG_INPUT=n
+
+ Fix iwlwifi so that it builds cleanly with CONFIG_INPUT=n.
+ Also free the input device on exit.
+
+ drivers/built-in.o: In function `iwl_rfkill_unregister':
+ (.text+0xbf430): undefined reference to `input_unregister_device'
+ drivers/built-in.o: In function `iwl_rfkill_init':
+ (.text+0xbf51c): undefined reference to `input_allocate_device'
+ drivers/built-in.o: In function `iwl_rfkill_init':
+ (.text+0xbf5bf): undefined reference to `input_register_device'
+ drivers/built-in.o: In function `iwl_rfkill_init':
+ (.text+0xbf5e9): undefined reference to `input_free_device'
+ net/built-in.o: In function `rfkill_disconnect':
+ rfkill-input.c:(.text+0xe71e1): undefined reference to `input_close_device'
+ rfkill-input.c:(.text+0xe71e9): undefined reference to `input_unregister_handle'
+ net/built-in.o: In function `rfkill_connect':
+ rfkill-input.c:(.text+0xe723e): undefined reference to `input_register_handle'
+ rfkill-input.c:(.text+0xe724d): undefined reference to `input_open_device'
+ rfkill-input.c:(.text+0xe725c): undefined reference to `input_unregister_handle'
+ net/built-in.o: In function `rfkill_handler_init':
+ rfkill-input.c:(.init.text+0x36ec): undefined reference to `input_register_handler'
+ net/built-in.o: In function `rfkill_handler_exit':
+ rfkill-input.c:(.exit.text+0x112c): undefined reference to `input_unregister_handler'
+ make[1]: *** [.tmp_vmlinux1] Error 1
+
+ Signed-off-by: Randy Dunlap <randy.dunlap at oracle.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 428da76523e4a9c08bdfadc25a05b520f19b9133
+Author: Ivo van Doorn <ivdoorn at gmail.com>
+Date: Tue Jun 24 19:23:36 2008 +0200
+
+ mac80211: Add RTNL warning for workqueue
+
+ The workqueue provided by mac80211 should not be used for
+ scheduled tasks that acquire the RTNL lock. This could be done
+ when the driver uses the function ieee80211_iterate_active_interfaces()
+ within the scheduled work. Such behavior will end in locking
+ dependencies problems when an interface is being removed.
+
+ This patch will add a notification about the RTNL locking and
+ the mac80211 workqueue to prevent driver developers from
+ blindly using it.
+
+ Signed-off-by: Ivo van Doorn <IvDoorn at gmail.com>
+ Acked-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit f37d08bddc5cb8de18e55f2b0a401b3eb6269af4
+Author: Tomas Winkler <tomas.winkler at intel.com>
+Date: Tue Jun 24 15:50:17 2008 +0300
+
+ mac80211: add phy information to giwname
+
+ This patch add phy information to giwname.
+
+ Quoting:
+ It's not useless, it's supposed to tell you about the protocol
+ capability of the device, like "IEEE 802.11b" or "IEEE 802.11abg"
+
+ Jean
+
+ Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit b9fcc4f2987a757acb3af43aa31dc860bb957970
+Author: Emmanuel Grumbach <emmanuel.grumbach at intel.com>
+Date: Tue Jun 24 13:37:59 2008 +0300
+
+ mac80211: update the authentication method
+
+ This patch updates the authentication method upon giwencode ioctl.
+
+ Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach at intel.com>
+ Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+ Acked-by: Johannes Berg <johannes at sipsolutions.net>
+ Acked-by: Dan Williams <dcbw at redhat.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit fa6adfe9e625a6a843a1abed5f4e7a000c11952c
+Author: Emmanuel Grumbach <emmanuel.grumbach at intel.com>
+Date: Tue Jun 24 13:37:58 2008 +0300
+
+ mac80211: don't return -EINVAL upon iwconfig wlan0 rts auto
+
+ This patch avoids returning -EINVAL upon iwconfig wlan0 rts auto. If
+ rts->fixed is 0, then we should choose a default value instead of failing.
+
+ Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach at intel.com>
+ Signed-off-by: Tomas Winkler <tomas.winkler at intel.com>
+ Acked-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 14a7dd6f6c1e0b361a37b6df52d4dc2ea36757d2
+Author: Michael Buesch <mb at bu3sch.de>
+Date: Tue Jun 24 12:22:05 2008 +0200
+
+ b43: Fix PIO skb clobber
+
+ This fixes a clobber of the skb that was introduced by the
+ tx_control->cb conversion patches.
+ This bug causes a crash when the skb destructor is invoked. That happens
+ on skb_orphan or skb_kfree.
+
+ Signed-off-by: Michael Buesch <mb at bu3sch.de>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 40af48ce501ea9ad9c485504a6fa0740801fa051
+Author: Ivo van Doorn <ivdoorn at gmail.com>
+Date: Mon Jun 23 19:56:50 2008 +0200
+
[...19481 lines suppressed...]
++ wext_ioctl_func private)
+ {
++ struct iwreq *iwr = (struct iwreq *) ifr;
+ struct net_device *dev;
+ iw_handler handler;
+
+@@ -1019,12 +1034,12 @@ static int wireless_process_ioctl(struct
+ * Note that 'cmd' is already filtered in dev_ioctl() with
+ * (cmd >= SIOCIWFIRST && cmd <= SIOCIWLAST) */
+ if (cmd == SIOCGIWSTATS)
+- return ioctl_standard_call(dev, ifr, cmd,
+- &iw_handler_get_iwstats);
++ return standard(dev, iwr, cmd, info,
++ &iw_handler_get_iwstats);
+
+ if (cmd == SIOCGIWPRIV && dev->wireless_handlers)
+- return ioctl_standard_call(dev, ifr, cmd,
+- &iw_handler_get_private);
++ return standard(dev, iwr, cmd, info,
++ &iw_handler_get_private);
+
+ /* Basic check */
+ if (!netif_device_present(dev))
+@@ -1035,9 +1050,9 @@ static int wireless_process_ioctl(struct
+ if (handler) {
+ /* Standard and private are not the same */
+ if (cmd < SIOCIWFIRSTPRIV)
+- return ioctl_standard_call(dev, ifr, cmd, handler);
++ return standard(dev, iwr, cmd, info, handler);
+ else
+- return ioctl_private_call(dev, ifr, cmd, handler);
++ return private(dev, iwr, cmd, info, handler);
+ }
+ /* Old driver API : call driver ioctl handler */
+ if (dev->do_ioctl)
+@@ -1045,27 +1060,154 @@ static int wireless_process_ioctl(struct
+ return -EOPNOTSUPP;
+ }
+
+-/* entry point from dev ioctl */
+-int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd,
+- void __user *arg)
++/* If command is `set a parameter', or `get the encoding parameters',
++ * check if the user has the right to do it.
++ */
++static int wext_permission_check(unsigned int cmd)
+ {
+- int ret;
+-
+- /* If command is `set a parameter', or
+- * `get the encoding parameters', check if
+- * the user has the right to do it */
+ if ((IW_IS_SET(cmd) || cmd == SIOCGIWENCODE || cmd == SIOCGIWENCODEEXT)
+ && !capable(CAP_NET_ADMIN))
+ return -EPERM;
+
++ return 0;
++}
++
++/* entry point from dev ioctl */
++static int wext_ioctl_dispatch(struct net *net, struct ifreq *ifr,
++ unsigned int cmd, struct iw_request_info *info,
++ wext_ioctl_func standard,
++ wext_ioctl_func private)
++{
++ int ret = wext_permission_check(cmd);
++
++ if (ret)
++ return ret;
++
+ dev_load(net, ifr->ifr_name);
+ rtnl_lock();
+- ret = wireless_process_ioctl(net, ifr, cmd);
++ ret = wireless_process_ioctl(net, ifr, cmd, info, standard, private);
+ rtnl_unlock();
+- if (IW_IS_GET(cmd) && copy_to_user(arg, ifr, sizeof(struct iwreq)))
++
++ return ret;
++}
++
++int wext_handle_ioctl(struct net *net, struct ifreq *ifr, unsigned int cmd,
++ void __user *arg)
++{
++ struct iw_request_info info = { .cmd = cmd, .flags = 0 };
++ int ret;
++
++ ret = wext_ioctl_dispatch(net, ifr, cmd, &info,
++ ioctl_standard_call,
++ ioctl_private_call);
++ if (ret >= 0 &&
++ IW_IS_GET(cmd) &&
++ copy_to_user(arg, ifr, sizeof(struct iwreq)))
++ return -EFAULT;
++
++ return ret;
++}
++
++#ifdef CONFIG_COMPAT
++static int compat_standard_call(struct net_device *dev,
++ struct iwreq *iwr,
++ unsigned int cmd,
++ struct iw_request_info *info,
++ iw_handler handler)
++{
++ const struct iw_ioctl_description *descr;
++ struct compat_iw_point *iwp_compat;
++ struct iw_point iwp;
++ int err;
++
++ descr = standard_ioctl + (cmd - SIOCIWFIRST);
++
++ if (descr->header_type != IW_HEADER_TYPE_POINT)
++ return ioctl_standard_call(dev, iwr, cmd, info, handler);
++
++ iwp_compat = (struct compat_iw_point *) &iwr->u.data;
++ iwp.pointer = compat_ptr(iwp_compat->pointer);
++ iwp.length = iwp_compat->length;
++ iwp.flags = iwp_compat->flags;
++
++ err = ioctl_standard_iw_point(&iwp, cmd, descr, handler, dev, info);
++
++ iwp_compat->pointer = ptr_to_compat(iwp.pointer);
++ iwp_compat->length = iwp.length;
++ iwp_compat->flags = iwp.flags;
++
++ return err;
++}
++
++static int compat_private_call(struct net_device *dev, struct iwreq *iwr,
++ unsigned int cmd, struct iw_request_info *info,
++ iw_handler handler)
++{
++ const struct iw_priv_args *descr;
++ int ret, extra_size;
++
++ extra_size = get_priv_descr_and_size(dev, cmd, &descr);
++
++ /* Check if we have a pointer to user space data or not. */
++ if (extra_size == 0) {
++ /* No extra arguments. Trivial to handle */
++ ret = handler(dev, info, &(iwr->u), (char *) &(iwr->u));
++ } else {
++ struct compat_iw_point *iwp_compat;
++ struct iw_point iwp;
++
++ iwp_compat = (struct compat_iw_point *) &iwr->u.data;
++ iwp.pointer = compat_ptr(iwp_compat->pointer);
++ iwp.length = iwp_compat->length;
++ iwp.flags = iwp_compat->flags;
++
++ ret = ioctl_private_iw_point(&iwp, cmd, descr,
++ handler, dev, info, extra_size);
++
++ iwp_compat->pointer = ptr_to_compat(iwp.pointer);
++ iwp_compat->length = iwp.length;
++ iwp_compat->flags = iwp.flags;
++ }
++
++ /* Call commit handler if needed and defined */
++ if (ret == -EIWCOMMIT)
++ ret = call_commit_handler(dev);
++
++ return ret;
++}
++
++int compat_wext_handle_ioctl(struct net *net, unsigned int cmd,
++ unsigned long arg)
++{
++ void __user *argp = (void __user *)arg;
++ struct iw_request_info info;
++ struct iwreq iwr;
++ char *colon;
++ int ret;
++
++ if (copy_from_user(&iwr, argp, sizeof(struct iwreq)))
++ return -EFAULT;
++
++ iwr.ifr_name[IFNAMSIZ-1] = 0;
++ colon = strchr(iwr.ifr_name, ':');
++ if (colon)
++ *colon = 0;
++
++ info.cmd = cmd;
++ info.flags = IW_REQUEST_FLAG_COMPAT;
++
++ ret = wext_ioctl_dispatch(net, (struct ifreq *) &iwr, cmd, &info,
++ compat_standard_call,
++ compat_private_call);
++
++ if (ret >= 0 &&
++ IW_IS_GET(cmd) &&
++ copy_to_user(argp, &iwr, sizeof(struct iwreq)))
+ return -EFAULT;
++
+ return ret;
+ }
++#endif
+
+ /************************* EVENT PROCESSING *************************/
+ /*
- Previous message (by thread): rpms/rdma/F-9 rdma-90-rdma.rules, NONE, 1.1 rdma-fixup-mtrr.awk, NONE, 1.1 rdma.conf, NONE, 1.1 rdma.init, NONE, 1.1 rdma.spec, NONE, 1.1
- Next message (by thread): rpms/libtirpc/devel libtirpc-0.1.8-superH-support.patch, NONE, 1.1 libtirpc.spec, 1.27, 1.28
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list