2009-10-08 04:28:12

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: pci tree build warning

Hi Jesse,

Today's linux-next build (powerpc allnoconfig) produced this warning:

WARNING: drivers/pci/built-in.o(.devinit.text+0x86a): Section mismatch in reference from the function pci_init() to the variable .init.data:pci_dfl_cache_line_size
The function __devinit pci_init() references
a variable __initdata pci_dfl_cache_line_size.
If pci_dfl_cache_line_size is only used by pci_init then
annotate pci_dfl_cache_line_size with a matching annotation.

Introduced by commit b20dd110d21aac94b3f4063cffbcf9718656ce51 ("PCI:
determine CLS more intelligently").
--
Cheers,
Stephen Rothwell [email protected]
http://www.canb.auug.org.au/~sfr/


Attachments:
(No filename) (665.00 B)
(No filename) (198.00 B)
Download all attachments

2009-10-08 10:00:45

by Tejun Heo

[permalink] [raw]
Subject: [PATCH pci-2.6#linux-next] pci: pci_dfl_cache_line_size is __devinitdata

pci_dfl_cache_line_size is marked as __initdata but referenced by
pci_init() which is __devinit. Make it __devinitdata instead of
__initdata.

Signed-off-by: Tejun Heo <[email protected]>
Reported-by: Stephen Rothwell <[email protected]>
---
drivers/pci/pci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 1ae95df..a6e22fd 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -53,7 +53,7 @@ unsigned long pci_hotplug_mem_size = DEFAULT_HOTPLUG_MEM_SIZE;
* the dfl or actual value as it sees fit. Don't forget this is
* measured in 32-bit words, not bytes.
*/
-u8 pci_dfl_cache_line_size __initdata = L1_CACHE_BYTES >> 2;
+u8 pci_dfl_cache_line_size __devinitdata = L1_CACHE_BYTES >> 2;
u8 pci_cache_line_size;

/**

2009-10-08 17:26:36

by Jesse Barnes

[permalink] [raw]
Subject: Re: [PATCH pci-2.6#linux-next] pci: pci_dfl_cache_line_size is __devinitdata

On Thu, 08 Oct 2009 18:59:53 +0900
Tejun Heo <[email protected]> wrote:

> pci_dfl_cache_line_size is marked as __initdata but referenced by
> pci_init() which is __devinit. Make it __devinitdata instead of
> __initdata.
>
> Signed-off-by: Tejun Heo <[email protected]>
> Reported-by: Stephen Rothwell <[email protected]>
> ---
> drivers/pci/pci.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
> index 1ae95df..a6e22fd 100644
> --- a/drivers/pci/pci.c
> +++ b/drivers/pci/pci.c
> @@ -53,7 +53,7 @@ unsigned long pci_hotplug_mem_size =
> DEFAULT_HOTPLUG_MEM_SIZE;
> * the dfl or actual value as it sees fit. Don't forget this is
> * measured in 32-bit words, not bytes.
> */
> -u8 pci_dfl_cache_line_size __initdata = L1_CACHE_BYTES >> 2;
> +u8 pci_dfl_cache_line_size __devinitdata = L1_CACHE_BYTES >> 2;
> u8 pci_cache_line_size;

Fix pushed, thanks for the quick turnaround Tejun.

--
Jesse Barnes, Intel Open Source Technology Center

2009-10-26 20:40:19

by Jesse Barnes

[permalink] [raw]
Subject: Re: [PATCH pci-2.6#linux-next] pci: pci_dfl_cache_line_size is __devinitdata

On Thu, 08 Oct 2009 18:59:53 +0900
Tejun Heo <[email protected]> wrote:

> pci_dfl_cache_line_size is marked as __initdata but referenced by
> pci_init() which is __devinit. Make it __devinitdata instead of
> __initdata.
>
> Signed-off-by: Tejun Heo <[email protected]>
> Reported-by: Stephen Rothwell <[email protected]>
> ---

Applied to my linux-next tree, thanks.

--
Jesse Barnes, Intel Open Source Technology Center