Subject: Re: [PATCH] sky2: safer transmit ring cleaning (v4)

From: Michael Breuer <[email-masked]>
Date: Thu, 14 Jan 2010 10:43:06 -0500

On 1/14/2010 8:19 AM, Mike McCormack wrote:
> Here's what was sitting in my tree...
> ...
>   err_out:
> @@ -1596,6 +1598,8 @@ static inline int tx_inuse(const struct sky2_port *sky2)
>   /* Number of list elements available for next tx */
>   static inline int tx_avail(const struct sky2_port *sky2)
>   {
> +	if (unlikely(!sky2->tx_ring))
> +		return 0;
>   	return sky2->tx_pending - tx_inuse(sky2);
>   }
>    
This hunk (patch) conflicts with the v4 patch Stephen sent out last 
night. He added an smp_mb in front of the return. I'm going to give this 
a go with the smb_mb before the unlikely test.