From: "Gary S. Robertson" <gary.robert...@linaro.org> Fixed computation of page size and text segment offset for various arm architectures - including both LE and BE variants of armv7 as well as aarch64
Upstream Status: Accepted at libhugetlbfs project Signed-off-by: Gary S. Robertson <gary.robert...@linaro.org> --- ...rch64-fix-page-size-not-properly-computed.patch | 32 ----------- ...s-arm-arches-fix-page-size-and-text-offse.patch | 57 ++++++++++++++++++++ .../libhugetlbfs/libhugetlbfs_git.bb | 2 +- 3 files changed, 58 insertions(+), 33 deletions(-) delete mode 100644 meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-page-size-not-properly-computed.patch create mode 100644 meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-page-size-not-properly-computed.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-page-size-not-properly-computed.patch deleted file mode 100644 index da60ba0..0000000 --- a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-aarch64-fix-page-size-not-properly-computed.patch +++ /dev/null @@ -1,32 +0,0 @@ -Subject: [PATCH] aarch64: fix page size not properly computed - -There's 2 issues fixed: -* typo on MB variable (MB -> $MB) -* some linker variants are missing (linux and big endian) - - aarch64elfb - - aarch64linux - - aarch64linuxb - -Signed-off-by: Fathi Boudra <fathi.bou...@linaro.org> - -Upstream-Status: Submitted ---- - ld.hugetlbfs | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ld.hugetlbfs b/ld.hugetlbfs -index df446dd..6553547 100755 ---- a/ld.hugetlbfs -+++ b/ld.hugetlbfs -@@ -87,7 +87,7 @@ elf32ppclinux|elf64ppc) HPAGE_SIZE=$((16*$MB)) SLICE_SIZE=$((256*$MB)) ;; - elf64lppc) HPAGE_SIZE=$((16*$MB)) SLICE_SIZE=$((256*$MB)) ;; - elf_i386|elf_x86_64) HPAGE_SIZE=$((4*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; - elf_s390|elf64_s390) HPAGE_SIZE=$((1*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; --armelf_linux_eabi|aarch64elf) HPAGE_SIZE=$((2*MB)) SLICE_SIZE=$HPAGE_SIZE ;; -+armelf_linux_eabi|aarch64elf*|aarch64linux*) HPAGE_SIZE=$((2*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; - esac - - if [ "$HTLB_ALIGN" == "slice" ]; then --- -1.9.2 - diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch new file mode 100644 index 0000000..4e5b7bb --- /dev/null +++ b/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch @@ -0,0 +1,57 @@ +From 1ab6f7f9b34fc745451140fc21db6763dffc5785 Mon Sep 17 00:00:00 2001 +From: "Gary S. Robertson" <gary.robert...@linaro.org> +Date: Thu, 25 Sep 2014 14:57:06 -0500 +Subject: [PATCH] ld.hugetlbfs: arm arches - fix page size and text offset + setup + +There's 3 issues fixed: +* typo on MB variable (MB -> $MB) +* some linker variants are missing (linux and big endian) + - armelfb_linux_eabi + - aarch64elfb + - aarch64linux + - aarch64linuxb +* text segment offset was not specified for armv7 BE + +NOTE: This patch replaces and makes obsolete the following previously + submitted patch: + + aarch64: fix page size not properly computed + by: Fathi Boudra <fathi.bou...@linaro.org> + +Upstream Status: Accepted at libhugetlbfs project + +Signed-off-by: Gary S. Robertson <gary.robert...@linaro.org> +--- + ld.hugetlbfs | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/ld.hugetlbfs b/ld.hugetlbfs +index df446dd..4417442 100755 +--- a/ld.hugetlbfs ++++ b/ld.hugetlbfs +@@ -87,7 +87,7 @@ elf32ppclinux|elf64ppc) HPAGE_SIZE=$((16*$MB)) SLICE_SIZE=$((256*$MB)) ;; + elf64lppc) HPAGE_SIZE=$((16*$MB)) SLICE_SIZE=$((256*$MB)) ;; + elf_i386|elf_x86_64) HPAGE_SIZE=$((4*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; + elf_s390|elf64_s390) HPAGE_SIZE=$((1*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; +-armelf_linux_eabi|aarch64elf) HPAGE_SIZE=$((2*MB)) SLICE_SIZE=$HPAGE_SIZE ;; ++armelf*_linux_eabi|aarch64elf*|aarch64linux*) HPAGE_SIZE=$((2*$MB)) SLICE_SIZE=$HPAGE_SIZE ;; + esac + + if [ "$HTLB_ALIGN" == "slice" ]; then +@@ -96,9 +96,9 @@ if [ "$HTLB_ALIGN" == "slice" ]; then + + # targeting the ARM platform one needs to explicitly set the text segment offset + # otherwise it will be NULL. +- if [ "$EMU" == "armelf_linux_eabi" ]; then +- HTLBOPTS="$HTLBOPTS -Ttext-segment=$SLICE_SIZE" +- fi ++ case "$EMU" in ++ armelf*_linux_eabi) HTLBOPTS="$HTLBOPTS -Ttext-segment=$SLICE_SIZE" ;; ++ esac + fi + + ${LD} "${args[@]}" ${HTLBOPTS} +-- +1.7.9.5 + diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb index 5111935..72d5c66 100644 --- a/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb +++ b/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb @@ -16,7 +16,7 @@ SRC_URI = "git://git.code.sf.net/p/libhugetlbfs/code \ file://tests-Makefile-install-static-4G-edge-testcases.patch \ file://0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch \ file://0001-aarch64-fix-cross-compilation.patch \ - file://0001-aarch64-fix-page-size-not-properly-computed.patch \ + file://0001-ld.hugetlbfs-arm-arches-fix-page-size-and-text-offse.patch \ file://0001-replace-lib-lib64-hardcoded-values-by-LIBDIR32-LIBDI.patch \ file://0001-Extend-arm32-support-to-include-BE-variants.patch \ file://0001-Makefile-Recognize-all-ix86-arches.patch \ -- 1.7.9.5 -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel