diff options
author | Vasyl Gomonovych <gomonovych@gmail.com> | 2017-11-23 17:00:42 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-11-28 16:33:03 +0100 |
commit | 02543a4e96760a347fb9733bc8a0506a19270ec2 (patch) | |
tree | c0531043cf9875fe376720b4d98ffc29242ebde3 /drivers/misc | |
parent | ANDROID: binder: Add thread->process_todo flag. (diff) | |
download | linux-02543a4e96760a347fb9733bc8a0506a19270ec2.tar.xz linux-02543a4e96760a347fb9733bc8a0506a19270ec2.zip |
lkdtm: Missing kmalloc check
Handling a possible memory allocation failure.
Signed-off-by: Vasyl Gomonovych <gomonovych@gmail.com>
Acked-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc')
-rw-r--r-- | drivers/misc/lkdtm_heap.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/misc/lkdtm_heap.c b/drivers/misc/lkdtm_heap.c index f5494a6d4be5..65026d7de130 100644 --- a/drivers/misc/lkdtm_heap.c +++ b/drivers/misc/lkdtm_heap.c @@ -16,6 +16,8 @@ void lkdtm_OVERWRITE_ALLOCATION(void) { size_t len = 1020; u32 *data = kmalloc(len, GFP_KERNEL); + if (!data) + return; data[1024 / sizeof(u32)] = 0x12345678; kfree(data); @@ -33,6 +35,8 @@ void lkdtm_WRITE_AFTER_FREE(void) size_t offset = (len / sizeof(*base)) / 2; base = kmalloc(len, GFP_KERNEL); + if (!base) + return; pr_info("Allocated memory %p-%p\n", base, &base[offset * 2]); pr_info("Attempting bad write to freed memory at %p\n", &base[offset]); |