This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Re: [PATCH] Modpost section mismatch fix

To: Ian Campbell <ijc@xxxxxxxxxxxxxx>
Subject: [Xen-devel] Re: [PATCH] Modpost section mismatch fix
From: Raghavendra D Prabhu <rprabhu@xxxxxxxxxxx>
Date: Tue, 5 Jul 2011 03:46:46 +0530
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, jeremy.fitzhardinge@xxxxxxxxxx, virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Delivery-date: Tue, 05 Jul 2011 15:08:23 -0700
Dkim-signature: v=1; a=rsa-sha256; c=simple/simple; d=wnohang.net; s=mail; t=1309817811; bh=I5yjdoT4mbh5uVXafx0Xi9qdW7mOoY5hPWZiD+Xq4QM=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:In-Reply-To; b=efeOztoaObx9GNgXiZkkcSelQE7h0/LNq8VQzCk8Red2ztWYChCeGmdS3OMcJpdwg C0w5zuu9JCoN3N0FUBMv6bw+u42CbEwdZA/KAptn7iJjSZMZMTJMRPJOWL1L97UXZT kLwHiLy43XEYdBiVEK9xVMqv4XULbzPQwUMVuYCc=
Dkim-signature: v=1; a=rsa-sha256; c=simple/simple; d=wnohang.net; s=mail; t=1309817810; bh=I5yjdoT4mbh5uVXafx0Xi9qdW7mOoY5hPWZiD+Xq4QM=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:In-Reply-To; b=4nQKk9eXnDehwRSdtcnwykvWWpx2UeJo7/C7y5Ec9ueuOUkGu0ro8QVfTfBe/sJLk GRQFiPz1lyQwlyYB8T8GwOATsNE9ph3AR9b4vHBYcpqzQLmQgEaVJg44OX0UuyZ7aR GpBpIn7yxYsXOxyPAIHtWDPJgyCyVGhuCsO5njuI=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1309769388.634.51.camel@xxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20110703232508.GB4440@Xye> <1309769388.634.51.camel@xxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.21 (2010-12-30)
* On Mon, Jul 04, 2011 at 09:49:48AM +0100, Ian Campbell <ijc@xxxxxxxxxxxxxx> 
On Mon, 2011-07-04 at 04:55 +0530, Raghavendra D Prabhu wrote:
[Sorry if duplicate, one earlier was corrupt]

     I got section mismatches reported by modpost in latest build. It got
     reported for xen_register_pirq and xen_unplug_emulated_devices

 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

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.


Raghavendra Prabhu
GPG Id : 0xD72BE977
Fingerprint: B93F EBCB 8E05 7039 CD3C A4B8 A616 DCA1 D72B E977
www: wnohang.net
Virtualization mailing list

Xen-devel mailing list