diff options
| author | Thomas Zimmermann <tzimmermann@suse.de> | 2025-11-19 15:26:25 +0100 |
|---|---|---|
| committer | Thomas Zimmermann <tzimmermann@suse.de> | 2025-11-19 15:26:25 +0100 |
| commit | d4f14fa5c6c4d39b5187e1f410d59e38d76f283f (patch) | |
| tree | 8666bd4fcd78149936221a64707c4dc6ca75a9f8 /arch/riscv/kernel/module-sections.c | |
| parent | 949f1fd2225baefbea2995afa807dba5cbdb6bd3 (diff) | |
| parent | 6a23ae0a96a600d1d12557add110e0bb6e32730c (diff) | |
| download | linux-next-d4f14fa5c6c4d39b5187e1f410d59e38d76f283f.tar.gz linux-next-d4f14fa5c6c4d39b5187e1f410d59e38d76f283f.zip | |
Merge drm/drm-fixes into drm-misc-fixes
Backmerging to get fixes from v6.18-rc6.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Diffstat (limited to 'arch/riscv/kernel/module-sections.c')
| -rw-r--r-- | arch/riscv/kernel/module-sections.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/riscv/kernel/module-sections.c b/arch/riscv/kernel/module-sections.c index 75551ac6504c..1675cbad8619 100644 --- a/arch/riscv/kernel/module-sections.c +++ b/arch/riscv/kernel/module-sections.c @@ -119,6 +119,7 @@ int module_frob_arch_sections(Elf_Ehdr *ehdr, Elf_Shdr *sechdrs, unsigned int num_plts = 0; unsigned int num_gots = 0; Elf_Rela *scratch = NULL; + Elf_Rela *new_scratch; size_t scratch_size = 0; int i; @@ -168,9 +169,12 @@ int module_frob_arch_sections(Elf_Ehdr *ehdr, Elf_Shdr *sechdrs, scratch_size_needed = (num_scratch_relas + num_relas) * sizeof(*scratch); if (scratch_size_needed > scratch_size) { scratch_size = scratch_size_needed; - scratch = kvrealloc(scratch, scratch_size, GFP_KERNEL); - if (!scratch) + new_scratch = kvrealloc(scratch, scratch_size, GFP_KERNEL); + if (!new_scratch) { + kvfree(scratch); return -ENOMEM; + } + scratch = new_scratch; } for (size_t j = 0; j < num_relas; j++) |
