Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00b3e0a2 authored by Marek Skuczynski's avatar Marek Skuczynski Committed by Paul Mundt
Browse files

sh: Fix access to released memory in dwarf_unwinder_cleanup()

parent e5ff15be
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -892,18 +892,18 @@ static struct unwinder dwarf_unwinder = {

static void dwarf_unwinder_cleanup(void)
{
	struct dwarf_cie *cie;
	struct dwarf_fde *fde;
	struct dwarf_cie *cie, *cie_tmp;
	struct dwarf_fde *fde, *fde_tmp;

	/*
	 * Deallocate all the memory allocated for the DWARF unwinder.
	 * Traverse all the FDE/CIE lists and remove and free all the
	 * memory associated with those data structures.
	 */
	list_for_each_entry(cie, &dwarf_cie_list, link)
	list_for_each_entry_safe(cie, cie_tmp, &dwarf_cie_list, link)
		kfree(cie);

	list_for_each_entry(fde, &dwarf_fde_list, link)
	list_for_each_entry_safe(fde, fde_tmp, &dwarf_fde_list, link)
		kfree(fde);

	kmem_cache_destroy(dwarf_reg_cachep);