linux-kernel-test/arch
Julia Lawall cab7a1eeeb KVM: ia64: Fix irq disabling leak in error handling code
There is a call to local_irq_restore in the normal exit case, so it would
seem that there should be one on an error return as well.

The semantic patch that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
expression l;
expression E,E1,E2;
@@

local_irq_save(l);
... when != local_irq_restore(l)
    when != spin_unlock_irqrestore(E,l)
    when any
    when strict
(
if (...) { ... when != local_irq_restore(l)
               when != spin_unlock_irqrestore(E1,l)
+   local_irq_restore(l);
    return ...;
}
|
if (...)
+   {local_irq_restore(l);
    return ...;
+   }
|
spin_unlock_irqrestore(E2,l);
|
local_irq_restore(l);
)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Avi Kivity <avi@qumranet.com>
2008-07-27 11:35:32 +03:00
..
alpha [PATCH] sanitize __user_walk_fd() et.al. 2008-07-26 20:53:34 -04:00
arm Merge git://git.infradead.org/mtd-2.6 2008-07-26 20:30:56 -07:00
avr32 Merge git://git.infradead.org/mtd-2.6 2008-07-26 20:30:56 -07:00
blackfin Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6 2008-07-26 13:23:17 -07:00
cris cris: use generic show_mem() 2008-07-26 12:00:11 -07:00
frv frv: use generic show_mem() 2008-07-26 12:00:11 -07:00
h8300 h8300: use generic show_mem() 2008-07-26 12:00:11 -07:00
ia64 KVM: ia64: Fix irq disabling leak in error handling code 2008-07-27 11:35:32 +03:00
m32r m32r: use generic show_mem() 2008-07-26 12:00:11 -07:00
m68k m68k: use generic show_mem() 2008-07-26 12:00:11 -07:00
m68knommu m68knommu: use generic show_mem() 2008-07-26 12:00:11 -07:00
mips mips: use generic show_mem() 2008-07-26 12:00:11 -07:00
mn10300 mn10300: use generic show_mem() 2008-07-26 12:00:11 -07:00
parisc [PATCH] sanitize __user_walk_fd() et.al. 2008-07-26 20:53:34 -04:00
powerpc powerpc: use generic show_mem() 2008-07-26 12:00:11 -07:00
s390 s390: use generic show_mem() 2008-07-26 12:00:11 -07:00
sh sh: use generic show_mem() 2008-07-26 12:00:10 -07:00
sparc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2008-07-25 17:33:34 -07:00
sparc64 sparc64: use generic show_mem() 2008-07-26 12:00:10 -07:00
um um: use generic show_mem() 2008-07-26 12:00:10 -07:00
x86 KVM: VMX: Fix undefined beaviour of EPT after reload kvm-intel.ko 2008-07-27 11:34:10 +03:00
xtensa xtensa: use generic show_mem() 2008-07-26 12:00:10 -07:00
.gitignore
Kconfig tracehook: CONFIG_HAVE_ARCH_TRACEHOOK 2008-07-26 12:00:09 -07:00