Make findthread_and_lock take ihk_spinlock_t **

This commit is contained in:
Masamichi Takagi
2014-09-23 12:01:51 +09:00
parent 434597e629
commit a7b0880a8d
3 changed files with 5 additions and 5 deletions

View File

@@ -282,7 +282,7 @@ void check_need_resched(void);
void cpu_set(int cpu, cpu_set_t *cpu_set, ihk_spinlock_t *lock);
void cpu_clear(int cpu, cpu_set_t *cpu_set, ihk_spinlock_t *lock);
struct process *findthread_and_lock(int pid, int tid, void *savelock, unsigned long *irqstate);
struct process *findthread_and_lock(int pid, int tid, ihk_spinlock_t **savelock, unsigned long *irqstate);
void process_unlock(void *savelock, unsigned long irqstate);
#endif

View File

@@ -2066,7 +2066,7 @@ void runq_del_proc(struct process *proc, int cpu_id)
}
struct process *
findthread_and_lock(int pid, int tid, void *savelock, unsigned long *irqstate)
findthread_and_lock(int pid, int tid, ihk_spinlock_t **savelock, unsigned long *irqstate)
{
struct cpu_local_var *v;
struct process *p;
@@ -2075,11 +2075,11 @@ findthread_and_lock(int pid, int tid, void *savelock, unsigned long *irqstate)
for(i = 0; i < num_processors; i++){
v = get_cpu_local_var(i);
*(ihk_spinlock_t **)savelock = &(v->runq_lock);
*savelock = &(v->runq_lock);
*irqstate = ihk_mc_spinlock_lock(&(v->runq_lock));
list_for_each_entry(p, &(v->runq), sched_list){
if(p->pid == pid &&
p->tid == tid){
(tid == -1 || p->tid == tid)){
return p;
}
}

View File

@@ -200,7 +200,7 @@ void process_procfs_request(unsigned long rarg)
int rosnum, ret, pid, tid, ans = -EIO, eof = 0;
char *buf, *p;
struct ihk_ikc_channel_desc *syscall_channel;
void *savelock;
ihk_spinlock_t *savelock;
unsigned long irqstate;
dprintf("process_procfs_request: invoked.\n");