Add necessary check for payload and message buffer.

Signed-off-by: Julianx Grajkowski <julianx.grajkow...@intel.com>
Signed-off-by: Simei Su <simei...@intel.com>
Acked-by: Beilei Xing <beilei.x...@intel.com>
---
 .mailmap                               | 1 +
 drivers/common/idpf/base/idpf_common.c | 6 ++++--
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/.mailmap b/.mailmap
index 75d534c53d..23aed53102 100644
--- a/.mailmap
+++ b/.mailmap
@@ -1644,3 +1644,4 @@ Zhenning Xiao <zhenning.x...@intel.com>
 Josh Hay <joshua.a....@intel.com>
 Madhu Chittim <madhu.chit...@intel.com>
 Shailendra Bhatnagar <shailendra.bhatna...@intel.com>
+Julianx Grajkowski <julianx.grajkow...@intel.com>
diff --git a/drivers/common/idpf/base/idpf_common.c 
b/drivers/common/idpf/base/idpf_common.c
index fbf71416fd..9610916aa9 100644
--- a/drivers/common/idpf/base/idpf_common.c
+++ b/drivers/common/idpf/base/idpf_common.c
@@ -239,8 +239,10 @@ int idpf_clean_arq_element(struct idpf_hw *hw,
        e->desc.ret_val = msg.status;
        e->desc.datalen = msg.data_len;
        if (msg.data_len > 0) {
-               if (!msg.ctx.indirect.payload)
-                       return -EINVAL;
+               if (!msg.ctx.indirect.payload || !msg.ctx.indirect.payload->va 
||
+                   !e->msg_buf) {
+                       return -EFAULT;
+               }
                e->buf_len = msg.data_len;
                msg_data_len = msg.data_len;
                idpf_memcpy(e->msg_buf, msg.ctx.indirect.payload->va, 
msg_data_len,
-- 
2.25.1

Reply via email to