[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [PATCH] Modpost section mismatch fix
* On Mon, Jul 04, 2011 at 09:49:48AM +0100, Ian Campbell <ijc@xxxxxxxxxxxxxx> wrote: On Mon, 2011-07-04 at 04:55 +0530, Raghavendra D Prabhu wrote:[Sorry if duplicate, one earlier was corrupt] Hi, I got section mismatches reported by modpost in latest build. It got reported for xen_register_pirq and xen_unplug_emulated_devices functions.xen_register_pirq makes reference to acpi_sci_override_gsi in init.data section; marking xen_register_pirq with __init is not feasible since calls are made to it from acpi_register_gsi in non-init contexts. So marking it __refdata based on assumption that when acpi_sci_override_gsi is referenced, it is in early stages where it is alive.I don't think this assumption holds, since xen_register_pirq can be called at any time and basically unconditionally references acpi_sci_override_gsi. Yeah, that has been my guess as well, however I am not privy to the inner workings of Xen, so was not sure. If we don't want to remove the __init from acpi_sci_override_gsi then perhaps xen_setup_acpi_sci needs to stash it somewhere? Or maybe xen_register_pirq could take an "int force_irq" which, if not -1, would force a particular IRQ. The callsite in xen_setup_acpi_sci (actually via xen_register_gsi so the param would need to be propagated there) would be the only actual user? xen_register_gsi and hence, xen_register_pirq are called from init (with xen_setup_acpi_sci) and non-init (with acpi_register_gsi_xen); since xen_set_acpi_sci calls it with gsi == acpi_sci_override_gsi and is marked __init, the best way would be to call xen_register_gsi and xen_register_pirq with a boolean argument like sci_override to obviate the need to use acpi_sci_override_gsi in register_pirq. I will send the patch with this change if it looks good. The xen_unplug_emulated_devices change looks correct to me since xen_unplug_emulated_devices is called from xen_arch_hvm_post_suspend. Ian. -------------------------- Raghavendra Prabhu GPG Id : 0xD72BE977 Fingerprint: B93F EBCB 8E05 7039 CD3C A4B8 A616 DCA1 D72B E977 www: wnohang.net _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |