[PATCH v3 1/2] riscv: Safely remove entries from relocation list
Charlie Jenkins
charlie at rivosinc.com
Mon Dec 4 10:42:00 PST 2023
On Mon, Nov 27, 2023 at 11:42:08AM +0100, Andreas Schwab wrote:
> On Nov 22 2023, Charlie Jenkins wrote:
>
> > @@ -683,17 +700,29 @@ int add_relocation_to_accumulate(struct module *me, int type, void *location,
> >
> > if (!found) {
> > rel_head = kmalloc(sizeof(*rel_head), GFP_KERNEL);
> > +
> > + if (!rel_head)
> > + return -ENOMEM;
> > +
> > rel_head->rel_entry =
> > kmalloc(sizeof(struct list_head), GFP_KERNEL);
> > +
> > + if (!rel_head->rel_entry)
> > + return -ENOMEM;
>
> This leaks rel_head on error.
>
> --
> Andreas Schwab, schwab at linux-m68k.org
> GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
> "And now for something completely different."
Thank you for pointing this out, I fixed this issue in the next version
but forgot to respond to this thread.
https://lore.kernel.org/linux-riscv/20231127-module_linking_freeing-v4-1-a2ca1d7027d0@rivosinc.com/
- Charlie
More information about the linux-riscv
mailing list