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