From 09775be166d1a6e443af1cfb2c892ccfff1a5605 Mon Sep 17 00:00:00 2001 From: Jiyoung Jeong Date: Wed, 30 Oct 2019 22:34:35 +0900 Subject: [PATCH] [RAMEN9610-20797][COMMON][MODAP-49152] misc: modem_if: fix the problem of free duplication Change-Id: I83078bc3d9c44fac80ee56ab43f38b0ffb5fbe12 Signed-off-by: Jiyoung Jeong --- drivers/misc/modem_if/modem_io_device.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/drivers/misc/modem_if/modem_io_device.c b/drivers/misc/modem_if/modem_io_device.c index f7f5e6be11a2..1767699e506e 100644 --- a/drivers/misc/modem_if/modem_io_device.c +++ b/drivers/misc/modem_if/modem_io_device.c @@ -178,6 +178,7 @@ static inline int queue_skb_to_iod(struct sk_buff *skb, struct io_device *iod) iod->name, iod->app ? iod->app : "corresponding", rxq->qlen, MAX_IOD_RXQ_LEN); + dev_kfree_skb_any(skb); wake_up(&iod->wq); return -ENOSPC; @@ -191,12 +192,6 @@ static inline int queue_skb_to_iod(struct sk_buff *skb, struct io_device *iod) return 0; } -static int rx_drain(struct sk_buff *skb) -{ - dev_kfree_skb_any(skb); - return 0; -} - static int rx_loopback(struct sk_buff *skb) { struct io_device *iod = skbpriv(skb)->iod; @@ -663,7 +658,6 @@ static int rx_frame_done(struct io_device *iod, struct link_device *ld, err = rx_demux(ld, skb); if (err < 0) { mif_err_limited("ERR! rx_demux(err %d)\n", err); - rx_drain(skb); } return err; @@ -844,7 +838,6 @@ static int io_dev_recv_skb_from_link_dev(struct io_device *iod, err = rx_demux(ld, skb); if (err < 0) { mif_err_limited("ERR! rx_demux(err %d)\n", err); - rx_drain(skb); } return err; @@ -864,7 +857,6 @@ static int io_dev_recv_skb_single_from_link_dev(struct io_device *iod, err = rx_demux(ld, skb); if (err < 0) { mif_err_limited("ERR! rx_demux(err %d)\n", err); - rx_drain(skb); } return err; -- 2.20.1