Messages in this thread | | | Subject | Re: [PATCH] ath5k: fix detection of jumbo frames | From | Pavel Roskin <> | Date | Mon, 03 Nov 2008 08:35:28 -0500 |
| |
On Sun, 2008-11-02 at 14:08 -0500, Bob Copeland wrote: > Set ath5k_rs_status.rs_more using mask + shift. rs_more is a > u8, but we were setting it with a bitwise AND of a 16 bit value. > As a consequence, jumbo frames would not be discarded as intended. > Then, because the hw rate value of such frames is zero, and, since > 63266a653589e1a237527479f10212ea77ce7844 "ath5k: rates cleanup", > we do not fall back to the basic rate, such packets would trigger > the following WARN_ON:
Thanks for catching it! Please mention rs_antenna in addition to rs_more.
> - rs->rs_antenna = rx_status->rx_status_0 & > - AR5K_5210_RX_DESC_STATUS0_RECEIVE_ANTENNA; > - rs->rs_more = rx_status->rx_status_0 & > - AR5K_5210_RX_DESC_STATUS0_MORE; > + rs->rs_antenna = AR5K_REG_MS(rx_status->rx_status_0, > + AR5K_5210_RX_DESC_STATUS0_RECEIVE_ANTENNA); > + rs->rs_more = AR5K_REG_MS(rx_status->rx_status_0, > + AR5K_5210_RX_DESC_STATUS0_MORE);
rs_more should be boolean. It would be better to use "!!" to calculate rs_rate. No need to shift anything. As for rs_antenna, it's fine with me.
> +#define AR5K_5212_RX_DESC_STATUS0_DECOMP_CRC_ERROR_S 13
This doesn't belong to the patch. It looks like it's another boolean value, but it's not currently used.
-- Regards, Pavel Roskin
| |