linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] x86: Allow MMCONFIG above 4GB on x86_64
@ 2008-07-09 20:41 John Keller
  2008-07-09 21:02 ` Yinghai Lu
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: John Keller @ 2008-07-09 20:41 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-acpi, John Keller, takayoshi.kochi

SGI UV will have MMCFG base addresses that are greater than 4GB (32 bits).

Signed-off-by: John Keller <jpk@sgi.com>
---

A similar patch was submitted over a year ago, but apparently was not
merged in.

   http://marc.info/?l=linux-acpi&m=117283388212912&w=2


Index: linux-2.6/arch/x86/kernel/acpi/boot.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/acpi/boot.c	2008-07-09 13:02:54.000000000 -0500
+++ linux-2.6/arch/x86/kernel/acpi/boot.c	2008-07-09 15:25:32.000000000 -0500
@@ -200,6 +200,7 @@ int __init acpi_parse_mcfg(struct acpi_t
 	}
 
 	memcpy(pci_mmcfg_config, &mcfg[1], config_size);
+#ifndef CONFIG_X86_64
 	for (i = 0; i < pci_mmcfg_config_num; ++i) {
 		if (pci_mmcfg_config[i].address > 0xFFFFFFFF) {
 			printk(KERN_ERR PREFIX
@@ -209,6 +210,7 @@ int __init acpi_parse_mcfg(struct acpi_t
 			return -ENODEV;
 		}
 	}
+#endif
 
 	return 0;
 }

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: Allow MMCONFIG above 4GB on x86_64
  2008-07-09 20:41 [PATCH] x86: Allow MMCONFIG above 4GB on x86_64 John Keller
@ 2008-07-09 21:02 ` Yinghai Lu
  2008-07-10  7:28 ` Kenji Kaneshige
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Yinghai Lu @ 2008-07-09 21:02 UTC (permalink / raw)
  To: John Keller; +Cc: linux-kernel, linux-acpi, takayoshi.kochi

On Wed, Jul 9, 2008 at 1:41 PM, John Keller <jpk@sgi.com> wrote:
> SGI UV will have MMCFG base addresses that are greater than 4GB (32 bits).
>
> Signed-off-by: John Keller <jpk@sgi.com>
> ---
>
> A similar patch was submitted over a year ago, but apparently was not
> merged in.
>
>   http://marc.info/?l=linux-acpi&m=117283388212912&w=2
>
>
> Index: linux-2.6/arch/x86/kernel/acpi/boot.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/kernel/acpi/boot.c  2008-07-09 13:02:54.000000000 -0500
> +++ linux-2.6/arch/x86/kernel/acpi/boot.c       2008-07-09 15:25:32.000000000 -0500
> @@ -200,6 +200,7 @@ int __init acpi_parse_mcfg(struct acpi_t
>        }
>
>        memcpy(pci_mmcfg_config, &mcfg[1], config_size);
> +#ifndef CONFIG_X86_64
>        for (i = 0; i < pci_mmcfg_config_num; ++i) {
>                if (pci_mmcfg_config[i].address > 0xFFFFFFFF) {
>                        printk(KERN_ERR PREFIX
> @@ -209,6 +210,7 @@ int __init acpi_parse_mcfg(struct acpi_t
>                        return -ENODEV;
>                }
>        }
> +#endif
>
>        return 0;
>  }

CONFIG_RESOURCES_64BIT ?

YH

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: Allow MMCONFIG above 4GB on x86_64
  2008-07-09 20:41 [PATCH] x86: Allow MMCONFIG above 4GB on x86_64 John Keller
  2008-07-09 21:02 ` Yinghai Lu
@ 2008-07-10  7:28 ` Kenji Kaneshige
  2008-07-13 15:36 ` Andi Kleen
  2008-07-18 12:38 ` Ingo Molnar
  3 siblings, 0 replies; 6+ messages in thread
From: Kenji Kaneshige @ 2008-07-10  7:28 UTC (permalink / raw)
  To: John Keller; +Cc: linux-kernel, linux-acpi, takayoshi.kochi

John Keller wrote:
> SGI UV will have MMCFG base addresses that are greater than 4GB (32 bits).
> 
> Signed-off-by: John Keller <jpk@sgi.com>

Fujitsu servers also will need this change.

Thanks,
Kenji Kaneshige


> ---
> 
> A similar patch was submitted over a year ago, but apparently was not
> merged in.
> 
>    http://marc.info/?l=linux-acpi&m=117283388212912&w=2
> 
> 
> Index: linux-2.6/arch/x86/kernel/acpi/boot.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/kernel/acpi/boot.c	2008-07-09 13:02:54.000000000 -0500
> +++ linux-2.6/arch/x86/kernel/acpi/boot.c	2008-07-09 15:25:32.000000000 -0500
> @@ -200,6 +200,7 @@ int __init acpi_parse_mcfg(struct acpi_t
>  	}
>  
>  	memcpy(pci_mmcfg_config, &mcfg[1], config_size);
> +#ifndef CONFIG_X86_64
>  	for (i = 0; i < pci_mmcfg_config_num; ++i) {
>  		if (pci_mmcfg_config[i].address > 0xFFFFFFFF) {
>  			printk(KERN_ERR PREFIX
> @@ -209,6 +210,7 @@ int __init acpi_parse_mcfg(struct acpi_t
>  			return -ENODEV;
>  		}
>  	}
> +#endif
>  
>  	return 0;
>  }
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> 



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: Allow MMCONFIG above 4GB on x86_64
  2008-07-09 20:41 [PATCH] x86: Allow MMCONFIG above 4GB on x86_64 John Keller
  2008-07-09 21:02 ` Yinghai Lu
  2008-07-10  7:28 ` Kenji Kaneshige
@ 2008-07-13 15:36 ` Andi Kleen
  2008-07-18 12:38 ` Ingo Molnar
  3 siblings, 0 replies; 6+ messages in thread
From: Andi Kleen @ 2008-07-13 15:36 UTC (permalink / raw)
  To: John Keller; +Cc: linux-kernel, linux-acpi, takayoshi.kochi

John Keller <jpk@sgi.com> writes:
>
> A similar patch was submitted over a year ago, but apparently was not
> merged in.

There's no reason at all to make this 64bit only. A PAE 32bit kernel
can also access data above 4GB. So an ifdef is the wrong way.

The reason the check is there is that there are lots of 
x86 BIOS that report wrong mmconfig and this way there's another
sanity check.

You'll need either to find a way to preserve this check
on kernels not running on your system or show that the 
sanity check is not needed anymore. The later would 
be likely tricky.

-Andi


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: Allow MMCONFIG above 4GB on x86_64
  2008-07-09 20:41 [PATCH] x86: Allow MMCONFIG above 4GB on x86_64 John Keller
                   ` (2 preceding siblings ...)
  2008-07-13 15:36 ` Andi Kleen
@ 2008-07-18 12:38 ` Ingo Molnar
  2008-07-18 13:02   ` John Keller
  3 siblings, 1 reply; 6+ messages in thread
From: Ingo Molnar @ 2008-07-18 12:38 UTC (permalink / raw)
  To: John Keller
  Cc: linux-kernel, linux-acpi, takayoshi.kochi, Yinghai Lu,
	Jesse Barnes


* John Keller <jpk@sgi.com> wrote:

> SGI UV will have MMCFG base addresses that are greater than 4GB (32 
> bits).

> +++ linux-2.6/arch/x86/kernel/acpi/boot.c	2008-07-09 15:25:32.000000000 -0500
> @@ -200,6 +200,7 @@ int __init acpi_parse_mcfg(struct acpi_t
>  	}
>  
>  	memcpy(pci_mmcfg_config, &mcfg[1], config_size);
> +#ifndef CONFIG_X86_64
>  	for (i = 0; i < pci_mmcfg_config_num; ++i) {
>  		if (pci_mmcfg_config[i].address > 0xFFFFFFFF) {
>  			printk(KERN_ERR PREFIX
> @@ -209,6 +210,7 @@ int __init acpi_parse_mcfg(struct acpi_t
>  			return -ENODEV;
>  		}
>  	}
> +#endif

hm. If then it should be enabled very carefully and initially probably 
on a per system (i.e. DMI driven whitelist) basis.

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: Allow MMCONFIG above 4GB on x86_64
  2008-07-18 12:38 ` Ingo Molnar
@ 2008-07-18 13:02   ` John Keller
  0 siblings, 0 replies; 6+ messages in thread
From: John Keller @ 2008-07-18 13:02 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: John Keller, linux-kernel, linux-acpi, takayoshi.kochi,
	Yinghai Lu, Jesse Barnes

> 
> 
> * John Keller <jpk@sgi.com> wrote:
> 
> > SGI UV will have MMCFG base addresses that are greater than 4GB (32 
> > bits).
> 
> > +++ linux-2.6/arch/x86/kernel/acpi/boot.c	2008-07-09 15:25:32.000000000 -0500
> > @@ -200,6 +200,7 @@ int __init acpi_parse_mcfg(struct acpi_t
> >  	}
> >  
> >  	memcpy(pci_mmcfg_config, &mcfg[1], config_size);
> > +#ifndef CONFIG_X86_64
> >  	for (i = 0; i < pci_mmcfg_config_num; ++i) {
> >  		if (pci_mmcfg_config[i].address > 0xFFFFFFFF) {
> >  			printk(KERN_ERR PREFIX
> > @@ -209,6 +210,7 @@ int __init acpi_parse_mcfg(struct acpi_t
> >  			return -ENODEV;
> >  		}
> >  	}
> > +#endif
> 
> hm. If then it should be enabled very carefully and initially probably 
> on a per system (i.e. DMI driven whitelist) basis.
> 
> 	Ingo

I've also posted a revised patch that is platform specific.

http://marc.info/?l=linux-acpi&m=121615159014404&w=2

John

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-07-18 13:02 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-09 20:41 [PATCH] x86: Allow MMCONFIG above 4GB on x86_64 John Keller
2008-07-09 21:02 ` Yinghai Lu
2008-07-10  7:28 ` Kenji Kaneshige
2008-07-13 15:36 ` Andi Kleen
2008-07-18 12:38 ` Ingo Molnar
2008-07-18 13:02   ` John Keller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).