Mike,

Please explain why the patch below is any better/worse than the
patch here:

        http://marc.theaimsgroup.com/?l=linux-netdev&m=112997172112090&w=2

Thanks!

John

On Sat, Nov 05, 2005 at 01:47:00PM -0500, Mike Kershaw wrote:
> Josh Wright and I encountered this doing rawtx experiements some time
> ago.  I bounced it to the prism54 guys but it must have gotten lost in
> the shuffle and we just noticed that it's still in the latest kernel so
> here we go again.
> 
> PROBLEM:
> Prism54 assumes frames must be at least ETH_ZLEN in size, and grows the
> skb to that size if they are not.  However, it doesn't clear the grown
> skb so anything left in kernel buffers gets throw into the packet and
> transmitted onto the air.
> 
> SOLUTION:
> Don't grow the frame size.  802.11 doesn't have a minimum frame size
> constraint.  This was addressed on the Orinoco drivers recently in a 
> similar situation.  After talking to the Prism54 team there appears to
> be no constraint in the prism54 firmware that would prevent sending
> short frames like this.
> 
> Patch attached.
> 
> Signed off by:  Mike Kershaw <[EMAIL PROTECTED]>
> 
> 
> -- 
> Mike Kershaw/Dragorn <[EMAIL PROTECTED]>
> GPG Fingerprint: 3546 89DF 3C9D ED80 3381  A661 D7B2 8822 738B BDB1
> 
> Bus Error at 008BE426 while reading byte from DEADBEEF in User data space
> 

> diff --git a/drivers/net/wireless/prism54/islpci_eth.c 
> b/drivers/net/wireless/prism54/islpci_eth.c
> index 5952e99..a2558c2 100644
> --- a/drivers/net/wireless/prism54/islpci_eth.c
> +++ b/drivers/net/wireless/prism54/islpci_eth.c
> @@ -99,7 +99,9 @@ islpci_eth_transmit(struct sk_buff *skb,
>  
>       /* determine the amount of fragments needed to store the frame */
>  
> -     frame_size = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len;
> +     /* Previously this was calculated by enforcing that a frame had to be 
> as 
> +      * large as ETH_ZLEN, however this should not be necessary on 802.11 
> frames */
> +     frame_size = skb->len;
>       if (init_wds)
>               frame_size += 6;
>  




-- 
John W. Linville
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to