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

Commit 83ce6ef8 authored by Tony Luck's avatar Tony Luck
Browse files

[IA64] Don't set psr.ic and psr.i simultaneously



It's not a good idea to use "ssm psr.ic | psr.i" to simultaneously
enable interrupts and interrupt state collection, the two bits can
take effect asynchronously, so it is possible for an interrupt to
be serviced while psr.ic is still zero.

Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent 7dcca30a
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -40,7 +40,11 @@ GLOBAL_ENTRY(mca_handler_bhhook)
	mov	b6=loc1
	;;
	mov	loc1=rp
	ssm	psr.i | psr.ic
	ssm	psr.ic
	;;
	srlz.i
	;;
	ssm	psr.i
	br.call.sptk.many rp=b6		// does not return ...
	;;
	mov	ar.pfs=loc0