Commit e6d4485d authored by Bjorn Helgaas's avatar Bjorn Helgaas Committed by David Mosberger

[PATCH] ia64: Prevent SAL calls from being preempted

(SAL_CALL_REENTRANT): Disable preemption around the SAL call to
make sure we don't get rescheduled on a different CPU.
parent a1796f45
...@@ -71,7 +71,9 @@ extern spinlock_t sal_lock; ...@@ -71,7 +71,9 @@ extern spinlock_t sal_lock;
# define SAL_CALL_REENTRANT(result,args...) do { \ # define SAL_CALL_REENTRANT(result,args...) do { \
struct ia64_fpreg __ia64_scs_fr[6]; \ struct ia64_fpreg __ia64_scs_fr[6]; \
ia64_save_scratch_fpregs(__ia64_scs_fr); \ ia64_save_scratch_fpregs(__ia64_scs_fr); \
preempt_disable(); \
__SAL_CALL(result, args); \ __SAL_CALL(result, args); \
preempt_enable(); \
ia64_load_scratch_fpregs(__ia64_scs_fr); \ ia64_load_scratch_fpregs(__ia64_scs_fr); \
} while (0) } while (0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment