eal: fix interrupt trace point
This patch fixes (dereference after null check) coverity issue. For this reason, we should add null check at the beginning of the function and return error directly if the 'intr_handle' is null. Coverity issue: 357695, 357751 Fixes: 05c4105738d8 ("trace: add interrupt tracepoints") Cc: stable@dpdk.org Signed-off-by: Yunjian Wang <wangyunjian@huawei.com> Reviewed-by: Harman Kalra <hkalra@marvell.com>
This commit is contained in:
parent
f72299fd15
commit
39e2961a09
@ -350,13 +350,15 @@ rte_intr_enable(const struct rte_intr_handle *intr_handle)
|
||||
{
|
||||
int rc = 0;
|
||||
|
||||
if (intr_handle && intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
if (intr_handle == NULL)
|
||||
return -1;
|
||||
|
||||
if (intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
rc = 0;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!intr_handle || intr_handle->fd < 0 ||
|
||||
intr_handle->uio_cfg_fd < 0) {
|
||||
if (intr_handle->fd < 0 || intr_handle->uio_cfg_fd < 0) {
|
||||
rc = -1;
|
||||
goto out;
|
||||
}
|
||||
@ -389,13 +391,15 @@ rte_intr_disable(const struct rte_intr_handle *intr_handle)
|
||||
{
|
||||
int rc = 0;
|
||||
|
||||
if (intr_handle && intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
if (intr_handle == NULL)
|
||||
return -1;
|
||||
|
||||
if (intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
rc = 0;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!intr_handle || intr_handle->fd < 0 ||
|
||||
intr_handle->uio_cfg_fd < 0) {
|
||||
if (intr_handle->fd < 0 || intr_handle->uio_cfg_fd < 0) {
|
||||
rc = -1;
|
||||
goto out;
|
||||
}
|
||||
|
@ -667,13 +667,15 @@ rte_intr_enable(const struct rte_intr_handle *intr_handle)
|
||||
{
|
||||
int rc = 0;
|
||||
|
||||
if (intr_handle && intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
if (intr_handle == NULL)
|
||||
return -1;
|
||||
|
||||
if (intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
rc = 0;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!intr_handle || intr_handle->fd < 0 ||
|
||||
intr_handle->uio_cfg_fd < 0) {
|
||||
if (intr_handle->fd < 0 || intr_handle->uio_cfg_fd < 0) {
|
||||
rc = -1;
|
||||
goto out;
|
||||
}
|
||||
@ -794,13 +796,15 @@ rte_intr_disable(const struct rte_intr_handle *intr_handle)
|
||||
{
|
||||
int rc = 0;
|
||||
|
||||
if (intr_handle && intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
if (intr_handle == NULL)
|
||||
return -1;
|
||||
|
||||
if (intr_handle->type == RTE_INTR_HANDLE_VDEV) {
|
||||
rc = 0;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!intr_handle || intr_handle->fd < 0 ||
|
||||
intr_handle->uio_cfg_fd < 0) {
|
||||
if (intr_handle->fd < 0 || intr_handle->uio_cfg_fd < 0) {
|
||||
rc = -1;
|
||||
goto out;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user