mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-02 16:44:59 +00:00
octeontx2-pf: handle otx2_mbox_get_rsp errors in otx2_flows.c
Adding error pointer check after calling otx2_mbox_get_rsp(). Fixes:9917060fc3
("octeontx2-pf: Cleanup flow rule management") Fixes:f0a1913f8a
("octeontx2-pf: Add support for ethtool ntuple filters") Fixes:674b3e1642
("octeontx2-pf: Add additional checks while configuring ucast/bcast/mcast rules") Signed-off-by: Dipendra Khadka <kdipendra88@gmail.com> Reviewed-by: Simon Horman <horms@kernel.org> Signed-off-by: Andrew Lunn <andrew@lunn.ch>
This commit is contained in:
parent
e26f8eac6b
commit
bd3110bc10
@ -119,6 +119,8 @@ int otx2_alloc_mcam_entries(struct otx2_nic *pfvf, u16 count)
|
|||||||
|
|
||||||
rsp = (struct npc_mcam_alloc_entry_rsp *)otx2_mbox_get_rsp
|
rsp = (struct npc_mcam_alloc_entry_rsp *)otx2_mbox_get_rsp
|
||||||
(&pfvf->mbox.mbox, 0, &req->hdr);
|
(&pfvf->mbox.mbox, 0, &req->hdr);
|
||||||
|
if (IS_ERR(rsp))
|
||||||
|
goto exit;
|
||||||
|
|
||||||
for (ent = 0; ent < rsp->count; ent++)
|
for (ent = 0; ent < rsp->count; ent++)
|
||||||
flow_cfg->flow_ent[ent + allocated] = rsp->entry_list[ent];
|
flow_cfg->flow_ent[ent + allocated] = rsp->entry_list[ent];
|
||||||
@ -197,6 +199,10 @@ int otx2_mcam_entry_init(struct otx2_nic *pfvf)
|
|||||||
|
|
||||||
rsp = (struct npc_mcam_alloc_entry_rsp *)otx2_mbox_get_rsp
|
rsp = (struct npc_mcam_alloc_entry_rsp *)otx2_mbox_get_rsp
|
||||||
(&pfvf->mbox.mbox, 0, &req->hdr);
|
(&pfvf->mbox.mbox, 0, &req->hdr);
|
||||||
|
if (IS_ERR(rsp)) {
|
||||||
|
mutex_unlock(&pfvf->mbox.lock);
|
||||||
|
return PTR_ERR(rsp);
|
||||||
|
}
|
||||||
|
|
||||||
if (rsp->count != req->count) {
|
if (rsp->count != req->count) {
|
||||||
netdev_info(pfvf->netdev,
|
netdev_info(pfvf->netdev,
|
||||||
@ -232,6 +238,10 @@ int otx2_mcam_entry_init(struct otx2_nic *pfvf)
|
|||||||
|
|
||||||
frsp = (struct npc_get_field_status_rsp *)otx2_mbox_get_rsp
|
frsp = (struct npc_get_field_status_rsp *)otx2_mbox_get_rsp
|
||||||
(&pfvf->mbox.mbox, 0, &freq->hdr);
|
(&pfvf->mbox.mbox, 0, &freq->hdr);
|
||||||
|
if (IS_ERR(frsp)) {
|
||||||
|
mutex_unlock(&pfvf->mbox.lock);
|
||||||
|
return PTR_ERR(frsp);
|
||||||
|
}
|
||||||
|
|
||||||
if (frsp->enable) {
|
if (frsp->enable) {
|
||||||
pfvf->flags |= OTX2_FLAG_RX_VLAN_SUPPORT;
|
pfvf->flags |= OTX2_FLAG_RX_VLAN_SUPPORT;
|
||||||
|
Loading…
Reference in New Issue
Block a user