Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1261740 > unrolled thread
| Started by | Lada Trimasova <Lada.Trimasova@synopsys.com> |
|---|---|
| First post | 2015-11-03 18:40 +0100 |
| Last post | 2015-11-04 13:00 +0100 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] Arc: fix entry point calculation for locales other than english Lada Trimasova <Lada.Trimasova@synopsys.com> - 2015-11-03 18:40 +0100
Re: [PATCH] Arc: fix entry point calculation for locales other than english Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2015-11-04 13:00 +0100
| From | Lada Trimasova <Lada.Trimasova@synopsys.com> |
|---|---|
| Date | 2015-11-03 18:40 +0100 |
| Subject | [PATCH] Arc: fix entry point calculation for locales other than english |
| Message-ID | <qqNIS-5QT-17@gated-at.bofh.it> |
The problem was detected while making uImage.
To find the line with entry point address in the result
of the "readelf -h vmlinux" command "grep ENTRY POINT" is used.
But if the operating system locale is not english,
command readelf returns lines in local language.
Grep cannot find the line which contains "ENTRY POINT" in english.
Our decision uses readelf key which displays the symbol table.
Using grep _stext it finds the line with entry point in this table.
Signed-off-by: Lada Trimasova <ltrimas@synopsys.com>
Cc: Vineet Gupta <vgupta@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
---
arch/arc/boot/Makefile | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/arc/boot/Makefile b/arch/arc/boot/Makefile
index e597cb34..fa89a47 100644
--- a/arch/arc/boot/Makefile
+++ b/arch/arc/boot/Makefile
@@ -6,8 +6,7 @@ targets := vmlinux.bin vmlinux.bin.gz uImage
OBJCOPYFLAGS= -O binary -R .note -R .note.gnu.build-id -R .comment -S
-LINUX_START_TEXT = $$(readelf -h vmlinux | \
- grep "Entry point address" | grep -o 0x.*)
+LINUX_START_TEXT = $$(readelf -s vmlinux | grep _stext | awk '{print $$2}')
UIMAGE_LOADADDR = $(CONFIG_LINUX_LINK_BASE)
UIMAGE_ENTRYADDR = $(LINUX_START_TEXT)
--
1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Vineet Gupta <Vineet.Gupta1@synopsys.com> |
|---|---|
| Date | 2015-11-04 13:00 +0100 |
| Subject | Re: [PATCH] Arc: fix entry point calculation for locales other than english |
| Message-ID | <qr4To-8nc-13@gated-at.bofh.it> |
| In reply to | #1261740 |
On Tuesday 03 November 2015 11:04 PM, Lada Trimasova wrote:
> The problem was detected while making uImage.
> To find the line with entry point address in the result
> of the "readelf -h vmlinux" command "grep ENTRY POINT" is used.
>
> But if the operating system locale is not english,
> command readelf returns lines in local language.
>
> Grep cannot find the line which contains "ENTRY POINT" in english.
> Our decision uses readelf key which displays the symbol table.
> Using grep _stext it finds the line with entry point in this table.
>
> Signed-off-by: Lada Trimasova <ltrimas@synopsys.com>
> Cc: Vineet Gupta <vgupta@synopsys.com>
> Cc: Alexey Brodkin <abrodkin@synopsys.com>
> ---
> arch/arc/boot/Makefile | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/arc/boot/Makefile b/arch/arc/boot/Makefile
> index e597cb34..fa89a47 100644
> --- a/arch/arc/boot/Makefile
> +++ b/arch/arc/boot/Makefile
> @@ -6,8 +6,7 @@ targets := vmlinux.bin vmlinux.bin.gz uImage
>
> OBJCOPYFLAGS= -O binary -R .note -R .note.gnu.build-id -R .comment -S
>
> -LINUX_START_TEXT = $$(readelf -h vmlinux | \
> - grep "Entry point address" | grep -o 0x.*)
> +LINUX_START_TEXT = $$(readelf -s vmlinux | grep _stext | awk '{print $$2}')
This seems too fragile. You are assuming _stext will be the entry point which I
recently changed and merged in Linux tree for 4.4-rc1.
See commit 3971cdc202f638f252e39316d42492ace04cc1b1
"ARC: boot: Support Halt-on-reset and Run-on-reset SMP booting modes"
And even if we change ur patch to use re_Service, it is still not future proof. We
need to somehow rely on elf header for this !
I do see your problem but lets us see how other arches do it !
>
> UIMAGE_LOADADDR = $(CONFIG_LINUX_LINK_BASE)
> UIMAGE_ENTRYADDR = $(LINUX_START_TEXT)
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web