Yes I have the same problem.
I think I found the origin.
That's because wme_qdiscop_destroy in net/mac80211/wme.c passes a bad
pointer in tcf_destroy_chain.
It requires a struct tcf_proto **fl and not a struct tcf_proto *fl
Here is a patch, I can't test it because my gcc segfaults but I think it
will correct the bug.
2008/7/17 Alan Jenkins <[EMAIL PROTECTED]>:
> Alan Jenkins wrote:
> > I downloaded Nicks snapshot
> >
> > <
> http://www.kernel.org/pub/linux/kernel/people/mickflemm/compat-wireless-2008-07-03-ath5k.tar.bz2
> >
> >
> > and successfully compiled against v2.6.26. And it works! It's looking
> > up for my EeePC.
> >
> It panics if I unload it though. "Fatal exception in interrupt".
>
> The OOPS doesn't fit on my 640x480 screen and I have no idea how to
> capture it.
>
> qdisk_destroy+0x51/0x75 (top line visible)
> dev_shutdown
> rollback_registered
> unregister_netdevice
> ieee80211_unregister_hw
> ath5k_pci_remove
> pci_device_remove
> ...
> pci_unregister_driver
> exit_ath5k_pci
> sys_delete_module
> ...
>
> EIP: tcf_destroy_chain+0x10/0x18
>
> I guess the same thing should happen on shutdown. I tested explicit
> module removal first because my laptop uses PCIE hotplug as a
> kill-switch. (Ejection is triggered by an "eeepc-laptop" platform
> driver, and is necssary to turn off the eye-searing-blue wireless LED).
>
> Alan
> _______________________________________________
> ath5k-devel mailing list
> [email protected]
> https://lists.ath5k.org/mailman/listinfo/ath5k-devel
>
diff -u -r a/net/mac80211/wme.c b/net/mac80211/wme.c
--- a/net/mac80211/wme.c 2008-07-16 06:19:50.000000000 +0200
+++ b/net/mac80211/wme.c 2008-07-17 17:42:18.000000000 +0200
@@ -310,7 +310,7 @@
struct ieee80211_hw *hw = &local->hw;
int queue;
- tcf_destroy_chain(q->filter_list);
+ tcf_destroy_chain(&q->filter_list);
q->filter_list = NULL;
for (queue = 0; queue < QD_NUM(hw); queue++) {
_______________________________________________
ath5k-devel mailing list
[email protected]
https://lists.ath5k.org/mailman/listinfo/ath5k-devel