RDMA/mad: Convert BUG_ONs to error flows
Let's perform checks in-place instead of BUG_ONs. Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
dee92c4bf5
commit
2468b82d69
@ -1556,7 +1556,8 @@ static int add_oui_reg_req(struct ib_mad_reg_req *mad_reg_req,
|
|||||||
mad_reg_req->oui, 3)) {
|
mad_reg_req->oui, 3)) {
|
||||||
method = &(*vendor_table)->vendor_class[
|
method = &(*vendor_table)->vendor_class[
|
||||||
vclass]->method_table[i];
|
vclass]->method_table[i];
|
||||||
BUG_ON(!*method);
|
if (!*method)
|
||||||
|
goto error3;
|
||||||
goto check_in_use;
|
goto check_in_use;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1566,10 +1567,12 @@ static int add_oui_reg_req(struct ib_mad_reg_req *mad_reg_req,
|
|||||||
vclass]->oui[i])) {
|
vclass]->oui[i])) {
|
||||||
method = &(*vendor_table)->vendor_class[
|
method = &(*vendor_table)->vendor_class[
|
||||||
vclass]->method_table[i];
|
vclass]->method_table[i];
|
||||||
BUG_ON(*method);
|
|
||||||
/* Allocate method table for this OUI */
|
/* Allocate method table for this OUI */
|
||||||
if ((ret = allocate_method_table(method)))
|
if (!*method) {
|
||||||
goto error3;
|
ret = allocate_method_table(method);
|
||||||
|
if (ret)
|
||||||
|
goto error3;
|
||||||
|
}
|
||||||
memcpy((*vendor_table)->vendor_class[vclass]->oui[i],
|
memcpy((*vendor_table)->vendor_class[vclass]->oui[i],
|
||||||
mad_reg_req->oui, 3);
|
mad_reg_req->oui, 3);
|
||||||
goto check_in_use;
|
goto check_in_use;
|
||||||
|
Loading…
Reference in New Issue
Block a user