mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 21:30:53 +07:00
uml: remove unused variables in the context switcher
This patch removes a variable which was not used in two functions. Yet another code cleanup, nothing really significant. Please note that I could not test this on x86_64. I don't have the hardware for it. [ jdike - Bits of tidying around the affected code. Also, it's fine on x86_64 ] Signed-off-by: Karol Swietlicki <magotari@gmail.com> Signed-off-by: Jeff Dike <jdike@linux.intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
ab8cda4347
commit
291248fd6e
@ -81,12 +81,12 @@ static inline void set_current(struct task_struct *task)
|
|||||||
{ external_pid(task), task });
|
{ external_pid(task), task });
|
||||||
}
|
}
|
||||||
|
|
||||||
extern void arch_switch_to(struct task_struct *from, struct task_struct *to);
|
extern void arch_switch_to(struct task_struct *to);
|
||||||
|
|
||||||
void *_switch_to(void *prev, void *next, void *last)
|
void *_switch_to(void *prev, void *next, void *last)
|
||||||
{
|
{
|
||||||
struct task_struct *from = prev;
|
struct task_struct *from = prev;
|
||||||
struct task_struct *to= next;
|
struct task_struct *to = next;
|
||||||
|
|
||||||
to->thread.prev_sched = from;
|
to->thread.prev_sched = from;
|
||||||
set_current(to);
|
set_current(to);
|
||||||
@ -94,16 +94,15 @@ void *_switch_to(void *prev, void *next, void *last)
|
|||||||
do {
|
do {
|
||||||
current->thread.saved_task = NULL;
|
current->thread.saved_task = NULL;
|
||||||
|
|
||||||
switch_threads(&from->thread.switch_buf,
|
switch_threads(&from->thread.switch_buf, &to->thread.switch_buf);
|
||||||
&to->thread.switch_buf);
|
|
||||||
|
|
||||||
arch_switch_to(current->thread.prev_sched, current);
|
arch_switch_to(current);
|
||||||
|
|
||||||
if (current->thread.saved_task)
|
if (current->thread.saved_task)
|
||||||
show_regs(&(current->thread.regs));
|
show_regs(&(current->thread.regs));
|
||||||
next= current->thread.saved_task;
|
next = current->thread.saved_task;
|
||||||
prev= current;
|
prev = current;
|
||||||
} while(current->thread.saved_task);
|
} while (current->thread.saved_task);
|
||||||
|
|
||||||
return current->thread.prev_sched;
|
return current->thread.prev_sched;
|
||||||
|
|
||||||
@ -161,8 +160,6 @@ void new_thread_handler(void)
|
|||||||
void fork_handler(void)
|
void fork_handler(void)
|
||||||
{
|
{
|
||||||
force_flush_all();
|
force_flush_all();
|
||||||
if (current->thread.prev_sched == NULL)
|
|
||||||
panic("blech");
|
|
||||||
|
|
||||||
schedule_tail(current->thread.prev_sched);
|
schedule_tail(current->thread.prev_sched);
|
||||||
|
|
||||||
@ -171,7 +168,7 @@ void fork_handler(void)
|
|||||||
* arch_switch_to isn't needed. We could want to apply this to
|
* arch_switch_to isn't needed. We could want to apply this to
|
||||||
* improve performance. -bb
|
* improve performance. -bb
|
||||||
*/
|
*/
|
||||||
arch_switch_to(current->thread.prev_sched, current);
|
arch_switch_to(current);
|
||||||
|
|
||||||
current->thread.prev_sched = NULL;
|
current->thread.prev_sched = NULL;
|
||||||
|
|
||||||
|
@ -8,11 +8,11 @@
|
|||||||
#include "asm/uaccess.h"
|
#include "asm/uaccess.h"
|
||||||
#include "skas.h"
|
#include "skas.h"
|
||||||
|
|
||||||
extern int arch_switch_tls(struct task_struct *from, struct task_struct *to);
|
extern int arch_switch_tls(struct task_struct *to);
|
||||||
|
|
||||||
void arch_switch_to(struct task_struct *from, struct task_struct *to)
|
void arch_switch_to(struct task_struct *to)
|
||||||
{
|
{
|
||||||
int err = arch_switch_tls(from, to);
|
int err = arch_switch_tls(to);
|
||||||
if (!err)
|
if (!err)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -172,7 +172,7 @@ void clear_flushed_tls(struct task_struct *task)
|
|||||||
* SKAS patch.
|
* SKAS patch.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int arch_switch_tls(struct task_struct *from, struct task_struct *to)
|
int arch_switch_tls(struct task_struct *to)
|
||||||
{
|
{
|
||||||
if (!host_supports_tls)
|
if (!host_supports_tls)
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -105,7 +105,7 @@ long sys_clone(unsigned long clone_flags, unsigned long newsp,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
void arch_switch_to(struct task_struct *from, struct task_struct *to)
|
void arch_switch_to(struct task_struct *to)
|
||||||
{
|
{
|
||||||
if ((to->thread.arch.fs == 0) || (to->mm == NULL))
|
if ((to->thread.arch.fs == 0) || (to->mm == NULL))
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user