Skip to content

Commit

Permalink
sh: Fix TIF_USEDFPU clearing under FPU emulation.
Browse files Browse the repository at this point in the history
The unlazy_fpu() path calls in to save_fpu() if the task has
TIF_USEDFPU set. save_fpu() being the crap API that it is has the side
effect of clearing the flag itself, which presently doesn't happen
if we're using FPU emulation. Fix this up for now, pending an overhaul
in 2.6.26.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
  • Loading branch information
Paul Mundt committed Mar 26, 2008
1 parent 9bbafce commit 138bed1
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion include/asm-sh/fpu.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,14 @@ struct task_struct;

extern void save_fpu(struct task_struct *__tsk, struct pt_regs *regs);
#else

#define release_fpu(regs) do { } while (0)
#define grab_fpu(regs) do { } while (0)
#define save_fpu(tsk, regs) do { } while (0)

static inline void save_fpu(struct task_struct *tsk, struct pt_regs *regs)
{
clear_tsk_thread_flag(tsk, TIF_USEDFPU);
}
#endif

extern int do_fpu_inst(unsigned short, struct pt_regs *);
Expand Down

0 comments on commit 138bed1

Please sign in to comment.