mirror of
https://github.com/torvalds/linux.git
synced 2024-12-18 00:53:40 +00:00
xen: Clean up apic ipi interface
Commit f447d56d36
introduced the
implementation of the PV apic ipi interface. But there were some
odd things (it seems none of which cause really any issue but
maybe they should be cleaned up anyway):
- xen_send_IPI_mask_allbutself (and by that xen_send_IPI_allbutself)
ignore the passed in vector and only use the CALL_FUNCTION_SINGLE
vector. While xen_send_IPI_all and xen_send_IPI_mask use the vector.
- physflat_send_IPI_allbutself is declared unnecessarily. It is never
used.
This patch tries to clean up those things.
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
This commit is contained in:
parent
33c1174bae
commit
1db01b4903
@ -576,24 +576,22 @@ void xen_send_IPI_mask_allbutself(const struct cpumask *mask,
|
||||
{
|
||||
unsigned cpu;
|
||||
unsigned int this_cpu = smp_processor_id();
|
||||
int xen_vector = xen_map_vector(vector);
|
||||
|
||||
if (!(num_online_cpus() > 1))
|
||||
if (!(num_online_cpus() > 1) || (xen_vector < 0))
|
||||
return;
|
||||
|
||||
for_each_cpu_and(cpu, mask, cpu_online_mask) {
|
||||
if (this_cpu == cpu)
|
||||
continue;
|
||||
|
||||
xen_smp_send_call_function_single_ipi(cpu);
|
||||
xen_send_IPI_one(cpu, xen_vector);
|
||||
}
|
||||
}
|
||||
|
||||
void xen_send_IPI_allbutself(int vector)
|
||||
{
|
||||
int xen_vector = xen_map_vector(vector);
|
||||
|
||||
if (xen_vector >= 0)
|
||||
xen_send_IPI_mask_allbutself(cpu_online_mask, xen_vector);
|
||||
xen_send_IPI_mask_allbutself(cpu_online_mask, vector);
|
||||
}
|
||||
|
||||
static irqreturn_t xen_call_function_interrupt(int irq, void *dev_id)
|
||||
|
@ -5,7 +5,6 @@ extern void xen_send_IPI_mask(const struct cpumask *mask,
|
||||
extern void xen_send_IPI_mask_allbutself(const struct cpumask *mask,
|
||||
int vector);
|
||||
extern void xen_send_IPI_allbutself(int vector);
|
||||
extern void physflat_send_IPI_allbutself(int vector);
|
||||
extern void xen_send_IPI_all(int vector);
|
||||
extern void xen_send_IPI_self(int vector);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user