Re: [PATCH] ath5k: fix detection of jumbo frames

From: Pavel Roskin
Date: Mon Nov 03 2008 - 08:35:45 EST


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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/