[LEDE-DEV,lede-17.01,1/4] x86/generic: use HIGHMEM64G instead of HIGHMEM4G to fix PAE and Xen

Message ID 20170715205756.14334-1-baptiste@bitsofnetworks.org
State Accepted
Delegated to: Felix Fietkau
Headers show

Commit Message

Baptiste Jonglez July 15, 2017, 8:57 p.m.
From: Baptiste Jonglez <git@bitsofnetworks.org>

This is a backport of 641a65fd062987a456216cc4fa91ff2910528261 in master.

This change re-enables PAE for the 32-bit x86 subtarget, which is
interesting in its own right but also necessary for Xen support.

Commit af1d1ebd ("x86: enable 4G high memory support for generic (32bit)
subtarget") inadvertently disabled both PAE and Xen support.

Fixes: FS#908

Cc: Daniel Golle <daniel@makrotopia.org>
Cc: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
---
 target/linux/x86/generic/config-default | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Sven Roederer July 24, 2017, 10:52 p.m. | #1
On Samstag, 15. Juli 2017 22:57:53 CEST Baptiste Jonglez wrote:
> From: Baptiste Jonglez <git@bitsofnetworks.org>
> 
> This is a backport of 641a65fd062987a456216cc4fa91ff2910528261 in master.
> 
> This change re-enables PAE for the 32-bit x86 subtarget, which is
> interesting in its own right but also necessary for Xen support.
> 

Baptiste,

thanks for fixing the Xen and Xen-serial-console support.
i added these patches to out Freifunk-builds and can happily run this images 
on my vm-host again.

Hope they will find their way into the repo soon.

Sven
Baptiste Jonglez Aug. 26, 2017, 9:53 p.m. | #2
Hi,

On 25-07-17, Sven Roederer wrote:
> On Samstag, 15. Juli 2017 22:57:53 CEST Baptiste Jonglez wrote:
> > From: Baptiste Jonglez <git@bitsofnetworks.org>
> > 
> > This is a backport of 641a65fd062987a456216cc4fa91ff2910528261 in master.
> > 
> > This change re-enables PAE for the 32-bit x86 subtarget, which is
> > interesting in its own right but also necessary for Xen support.
> > 
> 
> Baptiste,
> 
> thanks for fixing the Xen and Xen-serial-console support.
> i added these patches to out Freifunk-builds and can happily run this images 
> on my vm-host again.

Glad to hear that it also works for you!

> Hope they will find their way into the repo soon.

This patch series was merged in master but not yet in lede-17.01.  I don't
know if another 17.01 point release is expected, but I think it should be
merged in any case.

Baptiste
Sven Roederer Sept. 25, 2017, 12:32 a.m. | #3
On Samstag, 26. August 2017 23:53:52 CEST Baptiste Jonglez wrote:
> This patch series was merged in master but not yet in lede-17.01.  I don't
> know if another 17.01 point release is expected, but I think it should be
> merged in any case.

I agree.
Merging into 17.01 branch would even help us to get rid of these commits as a 
local patch in our Freifunk-Firmware.

Sven
Baptiste Jonglez Oct. 16, 2017, 7:43 a.m. | #4
Hi,

Any chance to get this patch serie merged to the lede-17.01 branch?
As far as I can tell:

- Xen support is still broken in 17.01
- this patch serie still applies cleanly

Thanks,
Baptiste

On 15-07-17, Baptiste Jonglez wrote:
> From: Baptiste Jonglez <git@bitsofnetworks.org>
> 
> This is a backport of 641a65fd062987a456216cc4fa91ff2910528261 in master.
> 
> This change re-enables PAE for the 32-bit x86 subtarget, which is
> interesting in its own right but also necessary for Xen support.
> 
> Commit af1d1ebd ("x86: enable 4G high memory support for generic (32bit)
> subtarget") inadvertently disabled both PAE and Xen support.
> 
> Fixes: FS#908
> 
> Cc: Daniel Golle <daniel@makrotopia.org>
> Cc: Jo-Philipp Wich <jo@mein.io>
> Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
> ---
>  target/linux/x86/generic/config-default | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/target/linux/x86/generic/config-default b/target/linux/x86/generic/config-default
> index 1a14c270bc..c4ca4fd396 100644
> --- a/target/linux/x86/generic/config-default
> +++ b/target/linux/x86/generic/config-default
> @@ -42,6 +42,7 @@ CONFIG_AGP_INTEL=y
>  # CONFIG_AGP_SWORKS is not set
>  # CONFIG_AGP_VIA is not set
>  # CONFIG_APM is not set
> +CONFIG_ARCH_DMA_ADDR_T_64BIT=y
>  CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
>  CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y
>  CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
> @@ -165,7 +166,8 @@ CONFIG_HDMI=y
>  CONFIG_HIBERNATE_CALLBACKS=y
>  CONFIG_HID=y
>  CONFIG_HID_BATTERY_STRENGTH=y
> -# CONFIG_HIGHMEM64G is not set
> +# CONFIG_HIGHMEM4G is not set
> +CONFIG_HIGHMEM64G=y
>  CONFIG_HOTPLUG_CPU=y
>  CONFIG_HPET=y
>  CONFIG_HPET_MMAP=y
> @@ -267,6 +269,7 @@ CONFIG_PATA_VIA=y
>  CONFIG_PCIEAER=y
>  CONFIG_PCIEPORTBUS=y
>  CONFIG_PCIE_PME=y
> +CONFIG_PCI_BUS_ADDR_T_64BIT=y
>  CONFIG_PCI_MMCONFIG=y
>  CONFIG_PCI_XEN=y
>  # CONFIG_PCWATCHDOG is not set
Felix Fietkau Oct. 16, 2017, 9:05 a.m. | #5
On 2017-10-16 09:43, Baptiste Jonglez wrote:
> Hi,
> 
> Any chance to get this patch serie merged to the lede-17.01 branch?
> As far as I can tell:
> 
> - Xen support is still broken in 17.01
> - this patch serie still applies cleanly
Done. Sorry for the delay.

- Felix
Baptiste Jonglez Oct. 16, 2017, 9:06 p.m. | #6
On 16-10-17, Felix Fietkau wrote:
> On 2017-10-16 09:43, Baptiste Jonglez wrote:
> > Hi,
> > 
> > Any chance to get this patch serie merged to the lede-17.01 branch?
> > As far as I can tell:
> > 
> > - Xen support is still broken in 17.01
> > - this patch serie still applies cleanly
> Done. Sorry for the delay.

Thanks!

Jow, I noticed your subsequent revert in 46e29bd0788, can you explain a
bit more about the rationale?  Isn't it safe to refresh kernel config this
way?

As far as I can tell, all symbols removed by the refresh were redundant
with either the generic config or the x86 target config (except for
CONFIG_X86_X2APIC and CONFIG_ACPI_VIDEO which are not defined anywhere).

Thanks,
Baptiste

Patch

diff --git a/target/linux/x86/generic/config-default b/target/linux/x86/generic/config-default
index 1a14c270bc..c4ca4fd396 100644
--- a/target/linux/x86/generic/config-default
+++ b/target/linux/x86/generic/config-default
@@ -42,6 +42,7 @@  CONFIG_AGP_INTEL=y
 # CONFIG_AGP_SWORKS is not set
 # CONFIG_AGP_VIA is not set
 # CONFIG_APM is not set
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
 CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
 CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y
 CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
@@ -165,7 +166,8 @@  CONFIG_HDMI=y
 CONFIG_HIBERNATE_CALLBACKS=y
 CONFIG_HID=y
 CONFIG_HID_BATTERY_STRENGTH=y
-# CONFIG_HIGHMEM64G is not set
+# CONFIG_HIGHMEM4G is not set
+CONFIG_HIGHMEM64G=y
 CONFIG_HOTPLUG_CPU=y
 CONFIG_HPET=y
 CONFIG_HPET_MMAP=y
@@ -267,6 +269,7 @@  CONFIG_PATA_VIA=y
 CONFIG_PCIEAER=y
 CONFIG_PCIEPORTBUS=y
 CONFIG_PCIE_PME=y
+CONFIG_PCI_BUS_ADDR_T_64BIT=y
 CONFIG_PCI_MMCONFIG=y
 CONFIG_PCI_XEN=y
 # CONFIG_PCWATCHDOG is not set