The symptom would be fragments of 802.11 header showing up in the ethernet header because of skb header offsets being corrupted by MadWifi devices on lower ports which then get forwarded as-is to wired ports.
Sorry for the lame explanation, but the short end of the story is that you have to copy the skb before you modify it if you are going to play nice with bridging.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3146 0192ed92-7a03-0410-a25b-9323aeb14dbd
I've fixed the logic so that multicast is dropped, with an error when disabled. I don't think this is a valid configuration. Also, we don't skip the filtering logic so that our own multicast traffic doesn't come back to us (looking like a bridging loop).
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3132 0192ed92-7a03-0410-a25b-9323aeb14dbd
hard_start_xmit() functions must either return NETDEV_TX_OK or
NETDEV_TX_BUSY (they might also return negative errno values as well,
like -ENETDOWN)
Correct a small missing static reported by sparse
This revert part of r3075
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3123 0192ed92-7a03-0410-a25b-9323aeb14dbd
When hardware queue is full, stop the linux device queue.
This fix a bug where CPU was 100% in softirq context
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3122 0192ed92-7a03-0410-a25b-9323aeb14dbd
Revert to the same API/ABI for crypto (used by hostapd/wpa_supplicant)
as used in 0.9.3.3. Tested with hostapd & wpa_supplicant.
Fixed a minor error in athkey usage display
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3110 0192ed92-7a03-0410-a25b-9323aeb14dbd
* Use roundup() to calculate the next intval boundary for nexttbtt. This method is more simple to understand and computationally simpler.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3099 0192ed92-7a03-0410-a25b-9323aeb14dbd
* Use roundup() to calculate the next intval boundary for nexttbtt. This method is more simple to understand and computationally simpler.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3095 0192ed92-7a03-0410-a25b-9323aeb14dbd
from the madwifi-dfs branch (benoit) r3086
Added MAC_FMT & MAC_ADDR macros that can be used as a drop-in
replacement for ether_sprintf(). Fixed some use of ether_sprintf() that
uses the same static buffer twice.
- Without the functional changes.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3091 0192ed92-7a03-0410-a25b-9323aeb14dbd
* packets dropped in ath_hardstart are cleaned up there, so cleaning up in parent_queue_xmit is an error
* packets in ieee80211_pwrsave must always have a reference in the cb, so it is better that is fails noisily otherwise
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3074 0192ed92-7a03-0410-a25b-9323aeb14dbd
does not increment rs_rateattempts for successfully sent packets, and
therefore the rate adaptation does not take place.
Signed-off-by: Brian Candler <B.Candler@pobox.com>
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3070 0192ed92-7a03-0410-a25b-9323aeb14dbd
It's called with NULL vap in several places, and the old
ath_beacon_config() had such protection. Without this check, the kernel
panics after association in managed mode.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3064 0192ed92-7a03-0410-a25b-9323aeb14dbd
arguments are boolean.
Originally the arguments were converted to booleans, but r2345 removed
this conversion. I've added the conversion to booleans back again and
removed the use of XOR as it's confusing and unnecessary.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3062 0192ed92-7a03-0410-a25b-9323aeb14dbd
IRQF_SHARED appeared in Linux 2.6.18. Define it in compat.h for older
kernels. Stop using obsolete SA_SHIRQ in if_ath_ahb.c and if_ath_pci.c
This fixes compilation of if_ath_ahb.c for Linux 2.6.22 and newer.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3041 0192ed92-7a03-0410-a25b-9323aeb14dbd
They are of no use, because they are not updated as the developmnet
continues. It's better to have a single version for MadWifi.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3039 0192ed92-7a03-0410-a25b-9323aeb14dbd
places where we could use vap->iv_bss->ni_bssid instead of ni->ni_bssid but i'm
not sure about the other ones.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3036 0192ed92-7a03-0410-a25b-9323aeb14dbd
branch to trunk. especially notable is, that due to improved nexttbtt (next
"target beacon transmit time") calculation we will now get the correct backoff
behaviour for beacons, resulting in only one beacon per beacon interval (the
current head version will send N beacons for N stations in the beacon interval
because they are poorly synchronized). also because of the better timer
synchronization there is no more time lag of up to 1 minute until we see
beacons after a merge. thanks to benoit for figuring that out!
the difference between this patch and the version in the dfs-branch is that it
still uses self linked descriptors and uses the SWBA interrupt only for
updating the nexttbtt. this is necessary to recognize HW merges, for which we
don't get any notification by the hardware (see the thread "IBSS testing" on
this list for more details).
also i tried to clean up a bit, use a more descriptive function name for timer
updates (ath_beacon_update_timers instead of ath_beacon_config) and generally
better distingush between a HW merge and a SW merge.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3027 0192ed92-7a03-0410-a25b-9323aeb14dbd