Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 145805
b: refs/heads/master
c: 0b8c3d5
h: refs/heads/master
i:
  145803: ca8a6eb
v: v3
  • Loading branch information
Chuck Ebbert authored and Ingo Molnar committed Jun 9, 2009
1 parent 996e0a0 commit 68b267e
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 42937e81a82b6bbc51a309c83da140b3a7ca5945
refs/heads/master: 0b8c3d5ab000c22889af7f9409799a6cdc31a2b2
12 changes: 6 additions & 6 deletions trunk/arch/x86/include/asm/i387.h
Original file line number Diff line number Diff line change
Expand Up @@ -305,18 +305,18 @@ static inline void kernel_fpu_end(void)
/*
* Some instructions like VIA's padlock instructions generate a spurious
* DNA fault but don't modify SSE registers. And these instructions
* get used from interrupt context aswell. To prevent these kernel instructions
* in interrupt context interact wrongly with other user/kernel fpu usage, we
* get used from interrupt context as well. To prevent these kernel instructions
* in interrupt context interacting wrongly with other user/kernel fpu usage, we
* should use them only in the context of irq_ts_save/restore()
*/
static inline int irq_ts_save(void)
{
/*
* If we are in process context, we are ok to take a spurious DNA fault.
* Otherwise, doing clts() in process context require pre-emption to
* be disabled or some heavy lifting like kernel_fpu_begin()
* If in process context and not atomic, we can take a spurious DNA fault.
* Otherwise, doing clts() in process context requires disabling preemption
* or some heavy lifting like kernel_fpu_begin()
*/
if (!in_interrupt())
if (!in_atomic())
return 0;

if (read_cr0() & X86_CR0_TS) {
Expand Down

0 comments on commit 68b267e

Please sign in to comment.