diff options
| author | Anton Moryakov <[email protected]> | 2026-02-27 00:27:28 +0300 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-03-13 13:22:01 -0600 |
| commit | 21edd76aded65d566f20a6937495c0c3965b4063 (patch) | |
| tree | dc8c7d38ff5ba1fe687b7d614128060cfeaf3f15 /lib | |
| parent | 660d8e4fe92e4ca3f2173e3d00a25f6ae5f6e97d (diff) | |
linux_compat: fix NULL pointer dereference in get_mem()
Add NULL check after memalign() call in get_mem() to prevent
potential NULL pointer dereference (CWE-476).
The function memalign() can return NULL on allocation failure.
Dereferencing the returned pointer without checking for NULL
may cause a crash in low-memory conditions.
Changes:
- Add NULL check after memalign() allocation
- Return NULL on failure, consistent with function semantics
This fixes the static analyzer warning:
linux_compat.c:34: dereference of memalign return value without NULL check
Reported-by: static analyzer Svace
Signed-off-by: Anton Moryakov <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/linux_compat.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/linux_compat.c b/lib/linux_compat.c index 985e88eb397..e4a3293e3af 100644 --- a/lib/linux_compat.c +++ b/lib/linux_compat.c @@ -32,6 +32,9 @@ struct kmem_cache *get_mem(int element_sz) struct kmem_cache *ret; ret = memalign(ARCH_DMA_MINALIGN, sizeof(struct kmem_cache)); + if (!ret) + return NULL; + ret->sz = element_sz; return ret; |
