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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/