Fix thread status race-condition caused by hold_thread() in do_kill() and terminate()

Conflicts:
	arch/x86_64/kernel/syscall.c
	kernel/syscall.c
This commit is contained in:
Masamichi Takagi
2018-01-26 22:00:24 +09:00
parent 51bc5fd61f
commit 65667709a8
4 changed files with 25 additions and 20 deletions

View File

@ -575,9 +575,6 @@ struct process {
int nr_processes; /* For partitioned execution */
};
void hold_thread(struct thread *ftn);
void release_thread(struct thread *ftn);
/*
* Scheduling policies
*/
@ -753,7 +750,7 @@ struct thread *create_thread(unsigned long user_pc,
struct thread *clone_thread(struct thread *org, unsigned long pc,
unsigned long sp, int clone_flags);
void destroy_thread(struct thread *thread);
void hold_thread(struct thread *thread);
int hold_thread(struct thread *thread);
void release_thread(struct thread *thread);
void flush_process_memory(struct process_vm *vm);
void hold_process_vm(struct process_vm *vm);