Re: [PATCH 09/16] iommu/amd: Add IOAPIC remapping routines

From: Joerg Roedel
Date: Mon Oct 01 2012 - 04:41:10 EST


On Fri, Sep 28, 2012 at 10:45:15AM -0400, Konrad Rzeszutek Wilk wrote:
> On Fri, Sep 28, 2012 at 02:23:59PM +0200, Joerg Roedel wrote:
> > + /*
> > + * Mask level triggered irqs.
> > + * Use IRQ_DELAYED_DISABLE for edge triggered irqs.
>
> so how come it is not set?

Don't understand this. What is not set?

> > + if (!config_enabled(CONFIG_SMP))
> > + return -1;
>
> -1? -ENOx something?

No, -1 for compatibiblity with the other implementation of this.

> > + err = apic->cpu_mask_to_apicid_and(cfg->domain, mask, &dest);
> > + if (err) {
> > + if (assign_irq_vector(irq, cfg, data->affinity))
> > + pr_err("AMD-Vi: Failed to recover vector for irq %d\n", irq);
>
> If we do OK with the assignment of the vector, should we just continue
> on instead of returning error?

The purpose of this is to recover to the old affinity if we failed at
this point. Even in this case, setting the new affinity still failed and
we need to inform the caller about this. Thus returning the error.
Also note the pr_err message which also tells you about the
recovery-case :)


Joerg


--
AMD Operating System Research Center

Advanced Micro Devices GmbH Einsteinring 24 85609 Dornach
General Managers: Alberto Bozzo
Registration: Dornach, Landkr. Muenchen; Registerger. Muenchen, HRB Nr. 43632

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/