[RFC PATCH net-next 2/4] gianfar: Added timer feature for eTSEC
Scott Wood
scottwood at freescale.com
Thu Apr 8 02:21:09 EST 2010
On Wed, Apr 07, 2010 at 11:46:24AM +0200, Manfred Rudigier wrote:
> switch (config.tx_type) {
> case HWTSTAMP_TX_OFF:
> + priv->hwts_tx_en = 0;
> break;
> case HWTSTAMP_TX_ON:
> + if (!(priv->device_flags & FSL_GIANFAR_DEV_HAS_TIMER))
> + return -ERANGE;
> + priv->hwts_tx_en = 1;
> return -ERANGE;
> default:
> return -ERANGE;
> @@ -796,8 +802,12 @@ static int gfar_hwtstamp_ioctl(struct net_device *netdev,
>
> switch (config.rx_filter) {
> case HWTSTAMP_FILTER_NONE:
> + priv->hwts_rx_en = 0;
> break;
> default:
> + if (!(priv->device_flags & FSL_GIANFAR_DEV_HAS_TIMER))
> + return -ERANGE;
> + priv->hwts_rx_en = 1;
> return -ERANGE;
> }
You need to acquire bflock (or avoid using bitfields for this), or you could
race with the setting of wol_en or rx_csum_enable.
-Scott
More information about the Linuxppc-dev
mailing list