Search Linux Wireless

Re: rtl8187 - nice work!

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

 



P.G. Richardson wrote:
> phy0: Selected rate control algorithm 'pid'
> 
> which is a first as it has always been 'mistral'. The only difference with
> compiling last night was I was not running the kernel I compiled against.
> I used 'make KLIB=/usr/src/{my new kernel} KLIB_BUILD=/usr/src/{my new
> kernel}' instead.
> 
> Just recompiled while running {my new kernel} and mistral correctly
> selected as rate control algorithm. Once installed, it does correctly auto
> select rate as expected.
> 
> iperf shows Mb performance has dropped though but gets improved by again
> fixing the rate at 11Mb.
> 
> So cheers for the info.

Minstrel is definitely a better choice than pid.

There is one thing that might make your interface work better. For performance
reasons, I chose not to pause the mac80211 queues at one point in the driver.
For my device, it did not make a difference, but it might for you. Please try
the attached patch.

Thanks,

Larry

Index: wireless-testing/drivers/net/wireless/rtl818x/rtl8187_dev.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/rtl818x/rtl8187_dev.c
+++ wireless-testing/drivers/net/wireless/rtl818x/rtl8187_dev.c
@@ -216,6 +216,7 @@ static void rtl8187_tx_cb(struct urb *ur
 		 * here, thus queue the skb and finish on a work queue. */
 		skb_queue_tail(&priv->b_tx_status.queue, skb);
 		queue_delayed_work(hw->workqueue, &priv->work, 0);
+		ieee80211_stop_queues(hw);
 	}
 }
 
@@ -898,6 +899,7 @@ static void rtl8187_work(struct work_str
 	}
 	retry = tmp;
 	mutex_unlock(&priv->conf_mutex);
+	ieee80211_wake_queues(dev);
 }
 
 static int rtl8187_start(struct ieee80211_hw *dev)

[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