lkdtm: perms: Increase pointer assignment check

Message ID 20230217185801.3232-1-zeming@nfschina.com
State New
Headers
Series lkdtm: perms: Increase pointer assignment check |

Commit Message

Li zeming Feb. 17, 2023, 6:58 p.m. UTC
  Increase the check after the pointer allocates memory. If these two
functions are used, at least increase some robustness.

Signed-off-by: Li zeming <zeming@nfschina.com>
---
 drivers/misc/lkdtm/perms.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)
  

Patch

diff --git a/drivers/misc/lkdtm/perms.c b/drivers/misc/lkdtm/perms.c
index b93404d65650..a5d8dce5ce49 100644
--- a/drivers/misc/lkdtm/perms.c
+++ b/drivers/misc/lkdtm/perms.c
@@ -180,15 +180,19 @@  static void lkdtm_EXEC_STACK(void)
 static void lkdtm_EXEC_KMALLOC(void)
 {
 	u32 *kmalloc_area = kmalloc(EXEC_SIZE, GFP_KERNEL);
-	execute_location(kmalloc_area, CODE_WRITE);
-	kfree(kmalloc_area);
+	if (kmalloc_area) {
+		execute_location(kmalloc_area, CODE_WRITE);
+		kfree(kmalloc_area);
+	}
 }
 
 static void lkdtm_EXEC_VMALLOC(void)
 {
 	u32 *vmalloc_area = vmalloc(EXEC_SIZE);
-	execute_location(vmalloc_area, CODE_WRITE);
-	vfree(vmalloc_area);
+	if (vmalloc_area) {
+		execute_location(vmalloc_area, CODE_WRITE);
+		vfree(vmalloc_area);
+	}
 }
 
 static void lkdtm_EXEC_RODATA(void)