Search Linux Wireless

Re: [PATCH] Fix regression in mesh forwarding path.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2009-07-06 at 17:52 -0700, javier@xxxxxxxxxxx wrote:
> From: Javier Cardona <javier@xxxxxxxxxxx>
> 
> The removal of the master netdev broke the mesh forwarding path.  This patch
> fixes it by using the new internal 'pending' queue.

Sorry, never tested mesh recently.

> As a result of this change, mesh forwarding no longer does the inefficient
> 802.11 -> 802.3 -> 802.11 conversion that was done before.

That sounds good!

>  	while ((skb = skb_dequeue(&mpath->frame_queue)) &&
> -			(mpath->flags & MESH_PATH_ACTIVE))
> -		dev_queue_xmit(skb);
> +			(mpath->flags & MESH_PATH_ACTIVE)) {
> +		ieee80211_select_queue(mpath->sdata->local, skb);
> +		ieee80211_add_pending_skb(mpath->sdata->local, skb);
> +	}

That does a lot of locking operations -- can you not select the queue
earlier, and use ieee80211_add_pending_skbs?

johannes

Attachment: signature.asc
Description: This is a digitally signed message part


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux