Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cfbe4063 authored by Eric W. Biederman's avatar Eric W. Biederman
Browse files

ehea: Call dev_consume_skb_any instead of dev_kfree_skb.



Replace dev_kfree_skb with dev_consume_skb_any in functions that can
be called in hard irq and other contexts.

None of the locations was a packet drop so dev_kfree_skb_any is
inappropriate.

Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
parent 374e29da
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -490,7 +490,7 @@ static int ehea_refill_rq_def(struct ehea_port_res *pr,
		skb_arr[index] = skb;
		tmp_addr = ehea_map_vaddr(skb->data);
		if (tmp_addr == -1) {
			dev_kfree_skb(skb);
			dev_consume_skb_any(skb);
			q_skba->os_skbs = fill_wqes - i;
			ret = 0;
			break;
@@ -856,7 +856,7 @@ static struct ehea_cqe *ehea_proc_cqes(struct ehea_port_res *pr, int my_quota)

			index = EHEA_BMASK_GET(EHEA_WR_ID_INDEX, cqe->wr_id);
			skb = pr->sq_skba.arr[index];
			dev_kfree_skb(skb);
			dev_consume_skb_any(skb);
			pr->sq_skba.arr[index] = NULL;
		}

@@ -2044,7 +2044,7 @@ static void ehea_xmit3(struct sk_buff *skb, struct net_device *dev,
		skb_copy_bits(skb, 0, imm_data, skb->len);

	swqe->immediate_data_length = skb->len;
	dev_kfree_skb(skb);
	dev_consume_skb_any(skb);
}

static int ehea_start_xmit(struct sk_buff *skb, struct net_device *dev)