diff options
Diffstat (limited to 'target/linux/uml/patches-2.6.30')
5 files changed, 129 insertions, 0 deletions
diff --git a/target/linux/uml/patches-2.6.30/001-gcc4_unit_at_a_time_i386_fix.patch b/target/linux/uml/patches-2.6.30/001-gcc4_unit_at_a_time_i386_fix.patch new file mode 100644 index 0000000000..442c0ec76e --- /dev/null +++ b/target/linux/uml/patches-2.6.30/001-gcc4_unit_at_a_time_i386_fix.patch @@ -0,0 +1,11 @@ +--- a/arch/um/Makefile-i386 ++++ b/arch/um/Makefile-i386 +@@ -35,7 +35,7 @@ cflags-y += -ffreestanding + # Disable unit-at-a-time mode on pre-gcc-4.0 compilers, it makes gcc use + # a lot more stack due to the lack of sharing of stacklots. Also, gcc + # 4.3.0 needs -funit-at-a-time for extern inline functions. +-KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0400 ] ; then \ ++KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0403 ] ; then \ + echo $(call cc-option,-fno-unit-at-a-time); \ + else echo $(call cc-option,-funit-at-a-time); fi ;) + diff --git a/target/linux/uml/patches-2.6.30/002-gcc4_unfortify_source.patch b/target/linux/uml/patches-2.6.30/002-gcc4_unfortify_source.patch new file mode 100644 index 0000000000..2be33d02a3 --- /dev/null +++ b/target/linux/uml/patches-2.6.30/002-gcc4_unfortify_source.patch @@ -0,0 +1,21 @@ +--- a/arch/um/Makefile-i386 ++++ b/arch/um/Makefile-i386 +@@ -39,4 +39,8 @@ KBUILD_CFLAGS += $(shell if [ $(call cc- + echo $(call cc-option,-fno-unit-at-a-time); \ + else echo $(call cc-option,-funit-at-a-time); fi ;) + ++# disable compile-time buffer checks, enabled by default on Ubuntu 8.10 ++# and later ++KBUILD_CFLAGS += $(call cc-option,-U_FORTIFY_SOURCE) ++ + KBUILD_CFLAGS += $(cflags-y) +--- a/arch/um/Makefile-x86_64 ++++ b/arch/um/Makefile-x86_64 +@@ -24,3 +24,7 @@ LINK-y += -m64 + + # Do unit-at-a-time unconditionally on x86_64, following the host + KBUILD_CFLAGS += $(call cc-option,-funit-at-a-time) ++ ++# disable compile-time buffer checks, enabled by default on Ubuntu 8.10 ++# and later ++KBUILD_CFLAGS += $(call cc-option,-U_FORTIFY_SOURCE) diff --git a/target/linux/uml/patches-2.6.30/004-fix_section_warning.patch b/target/linux/uml/patches-2.6.30/004-fix_section_warning.patch new file mode 100644 index 0000000000..3e0d945ae2 --- /dev/null +++ b/target/linux/uml/patches-2.6.30/004-fix_section_warning.patch @@ -0,0 +1,38 @@ +When I compiled uml on x86_64, I got this warning: + + MODPOST vmlinux.o +WARNING: vmlinux.o (.__syscall_stub.2): unexpected non-allocatable section. +Did you forget to use "ax"/"aw" in a .S file? +Note that for example <linux/init.h> contains +section definitions for use in .S files. + +Because modpost checks for missing SHF_ALLOC section flag. So just +add it. :) + +Signed-off-by: WANG Cong <amwang@redhat.com> +Cc: Jeff Dike <jdike@addtoit.com> +Cc: Sam Ravnborg <sam@ravnborg.org> + +--- +--- a/arch/um/sys-x86_64/stub.S ++++ b/arch/um/sys-x86_64/stub.S +@@ -1,7 +1,7 @@ + #include "as-layout.h" + + .globl syscall_stub +-.section .__syscall_stub, "x" ++.section .__syscall_stub, "ax" + syscall_stub: + syscall + /* We don't have 64-bit constants, so this constructs the address +--- a/arch/um/sys-i386/stub.S ++++ b/arch/um/sys-i386/stub.S +@@ -1,7 +1,7 @@ + #include "as-layout.h" + + .globl syscall_stub +-.section .__syscall_stub, "x" ++.section .__syscall_stub, "ax" + + .globl batch_syscall_stub + batch_syscall_stub: diff --git a/target/linux/uml/patches-2.6.30/005-fix_bash4_builds.patch b/target/linux/uml/patches-2.6.30/005-fix_bash4_builds.patch new file mode 100644 index 0000000000..687f5f04e8 --- /dev/null +++ b/target/linux/uml/patches-2.6.30/005-fix_bash4_builds.patch @@ -0,0 +1,45 @@ +commit 67dac695a1f33716f3e35c2292e7391410d58751 +Author: Paul Bolle <pebolle@tiscali.nl> +Date: Sun Sep 6 14:36:01 2009 +0200 + + um: add work around for build problems with bash 4 + + Building User Mode Linux fails with bash 4. The UML Makefiles use an + environment variable called CPPFLAGS_vmlinux.lds but bash 4 does not + export environment variables with a dot in their name. Add a hack to + allow building UML with bash 4 (which should not affect other shells). + + Signed-off-by: Paul Bolle <pebolle@tiscali.nl> + +--- a/arch/um/Makefile ++++ b/arch/um/Makefile +@@ -99,9 +99,6 @@ CFLAGS_NO_HARDENING := $(call cc-option, + CONFIG_KERNEL_STACK_ORDER ?= 2 + STACK_SIZE := $(shell echo $$[ 4096 * (1 << $(CONFIG_KERNEL_STACK_ORDER)) ] ) + +-CPPFLAGS_vmlinux.lds = -U$(SUBARCH) -DSTART=$(START) -DELF_ARCH=$(ELF_ARCH) \ +- -DELF_FORMAT="$(ELF_FORMAT)" -DKERNEL_STACK_SIZE=$(STACK_SIZE) +- + # The wrappers will select whether using "malloc" or the kernel allocator. + LINK_WRAPS = -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc + +@@ -152,4 +149,5 @@ $(SHARED_HEADERS)/kern_constants.h: + $(Q)mkdir -p $(dir $@) + $(Q)echo '#include "../../../../include/asm/asm-offsets.h"' >$@ + +-export SUBARCH USER_CFLAGS CFLAGS_NO_HARDENING OS HEADER_ARCH DEV_NULL_PATH ++export SUBARCH USER_CFLAGS CFLAGS_NO_HARDENING OS HEADER_ARCH DEV_NULL_PATH \ ++ ELF_ARCH ELF_FORMAT STACK_SIZE START +--- a/arch/um/kernel/Makefile ++++ b/arch/um/kernel/Makefile +@@ -3,6 +3,10 @@ + # Licensed under the GPL + # + ++CPPFLAGS_vmlinux.lds = -P -C -U$(ARCH) -U$(SUBARCH) -DSTART=$(START) \ ++ -DELF_ARCH=$(ELF_ARCH) -DELF_FORMAT="$(ELF_FORMAT)" \ ++ -DKERNEL_STACK_SIZE=$(STACK_SIZE) ++ + extra-y := vmlinux.lds + clean-files := + diff --git a/target/linux/uml/patches-2.6.30/901-lib_zlib_deflate_visible.patch b/target/linux/uml/patches-2.6.30/901-lib_zlib_deflate_visible.patch new file mode 100644 index 0000000000..b71a673314 --- /dev/null +++ b/target/linux/uml/patches-2.6.30/901-lib_zlib_deflate_visible.patch @@ -0,0 +1,14 @@ +make ZLIB_DEFLATE visible, so that we can choose whether we want it built-in +or as a module + +--- a/lib/Kconfig ++++ b/lib/Kconfig +@@ -92,7 +92,7 @@ config ZLIB_INFLATE + tristate + + config ZLIB_DEFLATE +- tristate ++ tristate "Zlib compression" + + config LZO_COMPRESS + tristate |