staging: rtl8192u: Replace mdelay with usleep_range in dm_TXPowerTrackingCallback_TSSI
dm_TXPowerTrackingCallback_TSSI() is never called in atomic context. dm_TXPowerTrackingCallback_TSSI() is only called by dm_txpower_trackingcallback(), which is set a parameter of INIT_DELAYED_WORK() in rtl8192_init_priv_task(). Despite never getting called from atomic context, dm_TXPowerTrackingCallback_TSSI() calls mdelay() to busily wait. This is not necessary and can be replaced with usleep_range() to avoid busy waiting. This is found by a static analysis tool named DCNS written by myself. And I also manually check it Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
6c93c63a63
commit
72cbd314bc
|
@ -539,13 +539,13 @@ static void dm_TXPowerTrackingCallback_TSSI(struct net_device *dev)
|
|||
rtStatus = SendTxCommandPacket(dev, &tx_cmd, 12);
|
||||
if (rtStatus == RT_STATUS_FAILURE)
|
||||
RT_TRACE(COMP_POWER_TRACKING, "Set configuration with tx cmd queue fail!\n");
|
||||
mdelay(1);
|
||||
usleep_range(1000, 2000);
|
||||
/*DbgPrint("hi, vivi, strange\n");*/
|
||||
for (i = 0; i <= 30; i++) {
|
||||
read_nic_byte(dev, 0x1ba, &Pwr_Flag);
|
||||
|
||||
if (Pwr_Flag == 0) {
|
||||
mdelay(1);
|
||||
usleep_range(1000, 2000);
|
||||
continue;
|
||||
}
|
||||
read_nic_word(dev, 0x13c, &Avg_TSSI_Meas);
|
||||
|
|
Loading…
Reference in a new issue