]> git.karo-electronics.de Git - karo-tx-linux.git/commit
x86, irq: Plug memory leak in sparse irq
authorThomas Gleixner <tglx@linutronix.de>
Tue, 28 Sep 2010 18:57:19 +0000 (20:57 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 29 Oct 2010 04:44:00 +0000 (21:44 -0700)
commita8bf47949a8d976ba1221584a0b90fbaf7f317ae
tree835d9d6beafb75a12fe17a005e509631888bb865
parent47ec6adc95ec33a73d992bb7d24da0b48e42aba4
x86, irq: Plug memory leak in sparse irq

commit 1cf180c94e9166cda083ff65333883ab3648e852 upstream.

free_irq_cfg() is not freeing the cpumask_vars in irq_cfg. Fixing this
triggers a use after free caused by the fact that copying struct
irq_cfg is done with memcpy, which copies the pointer not the cpumask.

Fix both places.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Yinghai Lu <yhlu.kernel@gmail.com>
LKML-Reference: <alpine.LFD.2.00.1009282052570.2416@localhost6.localdomain6>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/kernel/apic/io_apic.c