hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c
....@@ -1,8 +1,7 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * QLogic qlcnic NIC Driver
34 * Copyright (c) 2009-2013 QLogic Corporation
4
- *
5
- * See LICENSE.qlcnic for copyright and licensing details.
65 */
76
87 #include <linux/types.h>
....@@ -222,6 +221,8 @@
222221 return 0;
223222
224223 qlcnic_destroy_async_wq:
224
+ while (i--)
225
+ kfree(sriov->vf_info[i].vp);
225226 destroy_workqueue(bc->bc_async_wq);
226227
227228 qlcnic_destroy_trans_wq:
....@@ -906,13 +907,11 @@
906907 u32 *hdr, u32 *pay, u32 size)
907908 {
908909 struct qlcnic_hardware_context *ahw = adapter->ahw;
909
- u32 fw_mbx;
910910 u8 i, max = 2, hdr_size, j;
911911
912912 hdr_size = (sizeof(struct qlcnic_bc_hdr) / sizeof(u32));
913913 max = (size / sizeof(u32)) + hdr_size;
914914
915
- fw_mbx = readl(QLCNIC_MBX_FW(ahw, 0));
916915 for (i = 2, j = 0; j < hdr_size; i++, j++)
917916 *(hdr++) = readl(QLCNIC_MBX_FW(ahw, i));
918917 for (; j < max; i++, j++)
....@@ -938,7 +937,7 @@
938937 static int qlcnic_sriov_issue_bc_post(struct qlcnic_bc_trans *trans, u8 type)
939938 {
940939 struct qlcnic_vf_info *vf = trans->vf;
941
- u32 pay_size, hdr_size;
940
+ u32 pay_size;
942941 u32 *hdr, *pay;
943942 int ret;
944943 u8 pci_func = trans->func_id;
....@@ -949,14 +948,12 @@
949948 if (type == QLC_BC_COMMAND) {
950949 hdr = (u32 *)(trans->req_hdr + trans->curr_req_frag);
951950 pay = (u32 *)(trans->req_pay + trans->curr_req_frag);
952
- hdr_size = (sizeof(struct qlcnic_bc_hdr) / sizeof(u32));
953951 pay_size = qlcnic_sriov_get_bc_paysize(trans->req_pay_size,
954952 trans->curr_req_frag);
955953 pay_size = (pay_size / sizeof(u32));
956954 } else {
957955 hdr = (u32 *)(trans->rsp_hdr + trans->curr_rsp_frag);
958956 pay = (u32 *)(trans->rsp_pay + trans->curr_rsp_frag);
959
- hdr_size = (sizeof(struct qlcnic_bc_hdr) / sizeof(u32));
960957 pay_size = qlcnic_sriov_get_bc_paysize(trans->rsp_pay_size,
961958 trans->curr_rsp_frag);
962959 pay_size = (pay_size / sizeof(u32));
....@@ -1588,10 +1585,10 @@
15881585 if (mode == VPORT_MISS_MODE_ACCEPT_ALL &&
15891586 !adapter->fdb_mac_learn) {
15901587 qlcnic_alloc_lb_filters_mem(adapter);
1591
- adapter->drv_mac_learn = 1;
1588
+ adapter->drv_mac_learn = true;
15921589 adapter->rx_mac_learn = true;
15931590 } else {
1594
- adapter->drv_mac_learn = 0;
1591
+ adapter->drv_mac_learn = false;
15951592 adapter->rx_mac_learn = false;
15961593 }
15971594 }