kernel/smp.c: remove 'priv' of call_single_data
The 'priv' field is redundant; we can pass data via 'info'. Signed-off-by: liguang <lig.fnst@cn.fujitsu.com> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
1def1dc917
Коммит
3440a1ca99
|
@ -20,7 +20,6 @@ struct call_single_data {
|
|||
smp_call_func_t func;
|
||||
void *info;
|
||||
u16 flags;
|
||||
u16 priv;
|
||||
};
|
||||
|
||||
/* total number of cpus in this system (may exceed NR_CPUS) */
|
||||
|
|
|
@ -620,8 +620,7 @@ static void remote_softirq_receive(void *data)
|
|||
unsigned long flags;
|
||||
int softirq;
|
||||
|
||||
softirq = cp->priv;
|
||||
|
||||
softirq = *(int *)cp->info;
|
||||
local_irq_save(flags);
|
||||
__local_trigger(cp, softirq);
|
||||
local_irq_restore(flags);
|
||||
|
@ -631,9 +630,8 @@ static int __try_remote_softirq(struct call_single_data *cp, int cpu, int softir
|
|||
{
|
||||
if (cpu_online(cpu)) {
|
||||
cp->func = remote_softirq_receive;
|
||||
cp->info = cp;
|
||||
cp->info = &softirq;
|
||||
cp->flags = 0;
|
||||
cp->priv = softirq;
|
||||
|
||||
__smp_call_function_single(cpu, cp, 0);
|
||||
return 0;
|
||||
|
|
Загрузка…
Ссылка в новой задаче