[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-23 Thread fweimer at redhat dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

--- Comment #11 from Florian Weimer  ---
I don't think we have seen further problems on ppc64le after Nick has
backported Alan's fix into Fedora rawhide binutils. Thanks.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-23 Thread mtarsel at redhat dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

--- Comment #10 from Mick Tarsel  ---
I have verified this patch works on Alpine Linux version 3.19.0 on ppc64le. I
can successfully build the FreeRDP package with -flto=auto flag on ppc64le.

I added the patch from comment 8 into APKBUILD file for binutils. I then built
the binutils apk for ppc64le and then installed it on my ppc64le test box with:

apk add --allow-untrusted --no-network --no-cache
/root/packages/main/ppc64le/binutils-2.41-r0.apk 

I verified my package was installed with some text I added to “apk info” output
via APKBUILD file.

I did a fresh pull of aports repo and built FreeRDP package on ppc64le using
-flto=auto flag (removing previous patch for ppc64le). See end of build output
and system info below:

(177/179) Purging readline (8.2.1-r2)
(178/179) Purging sqlite-libs (3.44.2-r0)
(179/179) Purging xorgproto (2023.2-r0)
Executing busybox-1.36.1-r15.trigger
OK: 277 MiB in 67 packages
>>> freerdp: Updating the community/ppc64le repository index...
>>> freerdp: Signing the index...

~/new-aports/aports/community/freerdp # echo $?
0

~/new-aports/aports/community/freerdp # uname -a
Linux dd1e6a4036e9 5.14.0-362.8.1.el9_3.ppc64le #1 SMP Tue Oct 3 08:48:43 EDT
2023 ppc64le Linux

~/new-aports/aports/community/freerdp # cat /etc/os-release 
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.19.0
PRETTY_NAME="Alpine Linux v3.19"
HOME_URL="https://alpinelinux.org/;
BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues;

~/new-aports/aports/community/freerdp # ls ~/packages/community/ppc64le/
APKINDEX.tar.gz freerdp-dev-2.11.4-r0.apk  
freerdp-libs-2.11.4-r0.apk
freerdp-2.11.4-r0.apk   freerdp-doc-2.11.4-r0.apk

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-17 Thread amodra at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

Alan Modra  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
   Target Milestone|--- |2.42
 Resolution|--- |FIXED
   Assignee|unassigned at sourceware dot org   |amodra at gmail dot com

--- Comment #9 from Alan Modra  ---
Fixed

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-17 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

--- Comment #8 from Sourceware Commits  ---
The binutils-2_42-branch branch has been updated by Alan Modra
:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8532b62c9bf088727a37c3627f3882a69631bb39

commit 8532b62c9bf088727a37c3627f3882a69631bb39
Author: Alan Modra 
Date:   Tue Jan 16 11:06:23 2024 +1030

PR30824 internal error with -z pack-relative-relocs

This corrects a counting problem, where prior to relocate_section relr
encoded relative relocs were allowed when it was known they were on
even boundaries, but relocate_section can only put relative relocs
(non-relr) on eight byte boundaries.

PR 30824
* elf64-ppc.c (RELR_ALIGN): Define, use throughout.
(maybe_relr): New function, use throughout.

(cherry picked from commit f91074ebd8dc8077c9c778a42360e77a636dce5e)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-17 Thread cvs-commit at gcc dot gnu.org
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

--- Comment #7 from Sourceware Commits  ---
The master branch has been updated by Alan Modra :

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f91074ebd8dc8077c9c778a42360e77a636dce5e

commit f91074ebd8dc8077c9c778a42360e77a636dce5e
Author: Alan Modra 
Date:   Tue Jan 16 11:06:23 2024 +1030

PR30824 internal error with -z pack-relative-relocs

This corrects a counting problem, where prior to relocate_section relr
encoded relative relocs were allowed when it was known they were on
even boundaries, but relocate_section can only put relative relocs
(non-relr) on eight byte boundaries.

PR 30824
* elf64-ppc.c (RELR_ALIGN): Define, use throughout.
(maybe_relr): New function, use throughout.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-17 Thread nickc at redhat dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

--- Comment #6 from Nick Clifton  ---
Hi Alan,

(In reply to Alan Modra from comment #5)
> Created attachment 15305 [details]
> increase relr alignment requirement
> 
> untested

That patch does work.  At least as far as building FreeRDP goes.

Please could you apply it to the 2.42 branch as well as the mainline ?

Cheers
  Nick

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug ld/30824] internal error with -z pack-relative-relocs

2024-01-15 Thread amodra at gmail dot com
https://sourceware.org/bugzilla/show_bug.cgi?id=30824

Alan Modra  changed:

   What|Removed |Added

 Target||powerpc64, powerpc64le
Summary|BFD (GNU Binutils) 2.41 |internal error with -z
   |internal error, aborting at |pack-relative-relocs
   |elf64-ppc.c:17531 in|
   |ppc64_elf_relocate_section  |

-- 
You are receiving this mail because:
You are on the CC list for the bug.