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

Commit 06b425d8 authored by Al Viro's avatar Al Viro Committed by Linus Torvalds
Browse files

[PATCH] i386: task_thread_info()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 57eafdc2
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -601,8 +601,8 @@ static inline void disable_tsc(struct task_struct *prev_p,
	 * gcc should eliminate the ->thread_info dereference if
	 * has_secure_computing returns 0 at compile time (SECCOMP=n).
	 */
	prev = prev_p->thread_info;
	next = next_p->thread_info;
	prev = task_thread_info(prev_p);
	next = task_thread_info(next_p);

	if (has_secure_computing(prev) || has_secure_computing(next)) {
		/* slow path here */
+1 −1
Original line number Diff line number Diff line
@@ -311,7 +311,7 @@ static void do_sys_vm86(struct kernel_vm86_struct *info, struct task_struct *tsk
		"movl %1,%%ebp\n\t"
		"jmp resume_userspace"
		: /* no outputs */
		:"r" (&info->regs), "r" (tsk->thread_info) : "ax");
		:"r" (&info->regs), "r" (task_thread_info(tsk)) : "ax");
	/* we never return here */
}

+4 −4
Original line number Diff line number Diff line
@@ -49,19 +49,19 @@ static inline void __save_init_fpu( struct task_struct *tsk )
		X86_FEATURE_FXSR,
		"m" (tsk->thread.i387.fxsave)
		:"memory");
	tsk->thread_info->status &= ~TS_USEDFPU;
	task_thread_info(tsk)->status &= ~TS_USEDFPU;
}

#define __unlazy_fpu( tsk ) do { \
	if ((tsk)->thread_info->status & TS_USEDFPU) \
	if (task_thread_info(tsk)->status & TS_USEDFPU) \
		save_init_fpu( tsk ); \
} while (0)

#define __clear_fpu( tsk )					\
do {								\
	if ((tsk)->thread_info->status & TS_USEDFPU) {		\
	if (task_thread_info(tsk)->status & TS_USEDFPU) {		\
		asm volatile("fnclex ; fwait");				\
		(tsk)->thread_info->status &= ~TS_USEDFPU;	\
		task_thread_info(tsk)->status &= ~TS_USEDFPU;	\
		stts();						\
	}							\
} while (0)