Commit a89cbb16 authored by Hao Chen's avatar Hao Chen Committed by David S. Miller
Browse files

net: hns3: add max order judgement for tx spare buffer



Add max order judgement for tx spare buffer to avoid triggering
call trace, print related fail information instead, when user
set tx spare buf size to a large value which causes order
exceeding 10.

Fixes: e445f08a ("net: hns3: add support to set/get tx copybreak buf size via ethtool for hns3 driver")
Signed-off-by: default avatarHao Chen <chenhao288@hisilicon.com>
Signed-off-by: default avatarGuangbin Huang <huangguangbin2@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 87783721
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1038,6 +1038,12 @@ static void hns3_init_tx_spare_buffer(struct hns3_enet_ring *ring)
		return;

	order = get_order(alloc_size);
	if (order >= MAX_ORDER) {
		if (net_ratelimit())
			dev_warn(ring_to_dev(ring), "failed to allocate tx spare buffer, exceed to max order\n");
		return;
	}

	tx_spare = devm_kzalloc(ring_to_dev(ring), sizeof(*tx_spare),
				GFP_KERNEL);
	if (!tx_spare) {