[V2] raw/ioat: Check for the NULL pointer after calling malloc

Message ID tencent_3233F62A07E91482DCAD2C1AA4D01B241409@qq.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series [V2] raw/ioat: Check for the NULL pointer after calling malloc |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK
ci/github-robot: build success github build: passed
ci/iol-aarch64-unit-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-aarch64-compile-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-x86_64-compile-testing success Testing PASS
ci/iol-x86_64-unit-testing success Testing PASS
ci/iol-abi-testing success Testing PASS
ci/intel-Testing success Testing PASS

Commit Message

biggest dreamer July 6, 2022, 6:55 a.m. UTC
  From: Shiqi Liu <835703180@qq.com>

As the possible failure of the malloc(), the not_checked and
checked could be NULL pointer.
Therefore, it should be better to check it in order to avoid
the dereference of the NULL pointer.

Fixes: b7aaf417f93 ("raw/ioat: add bus driver for device scanning automatically")
Signed-off-by: Shiqi Liu <835703180@qq.com>
---
 drivers/raw/ioat/idxd_bus.c | 4 ++++
 1 file changed, 4 insertions(+)
  

Comments

Bruce Richardson July 6, 2022, 9:07 a.m. UTC | #1
On Wed, Jul 06, 2022 at 02:55:48PM +0800, 835703180@qq.com wrote:
> From: Shiqi Liu <835703180@qq.com>
> 
> As the possible failure of the malloc(), the not_checked and
> checked could be NULL pointer.
> Therefore, it should be better to check it in order to avoid
> the dereference of the NULL pointer.
> 
> Fixes: b7aaf417f93 ("raw/ioat: add bus driver for device scanning automatically")
> Signed-off-by: Shiqi Liu <835703180@qq.com>
> ---
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
  
Thomas Monjalon Oct. 10, 2022, 3:48 p.m. UTC | #2
06/07/2022 11:07, Bruce Richardson:
> On Wed, Jul 06, 2022 at 02:55:48PM +0800, 835703180@qq.com wrote:
> > From: Shiqi Liu <835703180@qq.com>
> > 
> > As the possible failure of the malloc(), the not_checked and
> > checked could be NULL pointer.
> > Therefore, it should be better to check it in order to avoid
> > the dereference of the NULL pointer.
> > 
> > Fixes: b7aaf417f93 ("raw/ioat: add bus driver for device scanning automatically")
> > Signed-off-by: Shiqi Liu <835703180@qq.com>
> > ---
> Acked-by: Bruce Richardson <bruce.richardson@intel.com>

Applied, thanks.
  

Patch

diff --git a/drivers/raw/ioat/idxd_bus.c b/drivers/raw/ioat/idxd_bus.c
index 539f51b1b1..ba2bbe0f7e 100644
--- a/drivers/raw/ioat/idxd_bus.c
+++ b/drivers/raw/ioat/idxd_bus.c
@@ -301,6 +301,10 @@  dsa_scan(void)
 		IOAT_PMD_DEBUG("%s(): found %s/%s", __func__, path, wq->d_name);
 
 		dev = malloc(sizeof(*dev));
+		if (dev == NULL) {
+			closedir(dev_dir);
+			return -ENOMEM;
+		}
 		if (dsa_addr_parse(wq->d_name, &dev->addr) < 0) {
 			IOAT_PMD_ERR("Error parsing WQ name: %s", wq->d_name);
 			free(dev);