Procházet zdrojové kódy

msm: ipa: fix the unlock issue for rmnet_ctl module

Fix the double unlock issue on rmnet_ctl_wakeup_ipa.

Change-Id: I3f559a7296463fee446da5b8f0174ccae91ba43a
Bojun Pan před 4 roky
rodič
revize
f29b6320d4
1 změnil soubory, kde provedl 1 přidání a 3 odebrání
  1. 1 3
      drivers/platform/msm/ipa/ipa_v3/rmnet_ctl_ipa.c

+ 1 - 3
drivers/platform/msm/ipa/ipa_v3/rmnet_ctl_ipa.c

@@ -527,8 +527,6 @@ static void rmnet_ctl_wakeup_ipa(struct work_struct *work)
 				rmnet_ctl_ipa3_ctx->stats.tx_pkt_dropped++;
 				rmnet_ctl_ipa3_ctx->stats.tx_pkt_dropped++;
 				rmnet_ctl_ipa3_ctx->stats.tx_byte_dropped +=
 				rmnet_ctl_ipa3_ctx->stats.tx_byte_dropped +=
 					skb->len;
 					skb->len;
-				spin_unlock_irqrestore(&rmnet_ctl_ipa3_ctx->tx_lock,
-					flags);
 				kfree_skb(skb);
 				kfree_skb(skb);
 				continue;
 				continue;
 			}
 			}
@@ -543,8 +541,8 @@ static void rmnet_ctl_wakeup_ipa(struct work_struct *work)
 		rmnet_ctl_ipa3_ctx->stats.tx_pkt_sent++;
 		rmnet_ctl_ipa3_ctx->stats.tx_pkt_sent++;
 		rmnet_ctl_ipa3_ctx->stats.tx_byte_sent +=
 		rmnet_ctl_ipa3_ctx->stats.tx_byte_sent +=
 			skb->len;
 			skb->len;
-		spin_unlock_irqrestore(&rmnet_ctl_ipa3_ctx->tx_lock, flags);
 	}
 	}
+	spin_unlock_irqrestore(&rmnet_ctl_ipa3_ctx->tx_lock, flags);
 	goto out;
 	goto out;
 
 
 delayed_work:
 delayed_work: