#13 Use system-wide readline
Closed 14 days ago by svashisht. Opened 6 months ago by ignatenkobrain.
rpms/ ignatenkobrain/bash system-readline  into  master

file modified
+6 -2

@@ -6,7 +6,7 @@ 

  Version: %{baseversion}%{patchleveltag}

  Name: bash

  Summary: The GNU Bourne Again shell

- Release: 1%{?dist}

+ Release: 2%{?dist}

  License: GPLv3+

  Url: https://www.gnu.org/software/bash

  Source0: https://ftp.gnu.org/gnu/bash/bash-%{baseversion}.tar.gz

@@ -87,6 +87,7 @@ 

  BuildRequires: texinfo bison

  BuildRequires: ncurses-devel

  BuildRequires: autoconf, gettext

+ BuildRequires: readline-devel

  # Required for bash tests

  BuildRequires: glibc-all-langpacks

  Requires: filesystem >= 3

@@ -124,7 +125,7 @@ 

  

  %build

  autoconf

- %configure --with-bash-malloc=no --with-afs

+ %configure --with-bash-malloc=no --with-afs --with-installed-readline

  

  # Recycles pids is neccessary. When bash's last fork's pid was X

  # and new fork's pid is also X, bash has to wait for this same pid.

@@ -308,6 +309,9 @@ 

  %{_libdir}/pkgconfig/%{name}.pc

  

  %changelog

+ * Mon Feb 18 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.0.2-2

+ - Use system-wide readline

+ 

  * Thu Feb 14 2019 Siteshwar Vashisht <svashisht@redhat.com> - 5.0.2-1

  - Rebase to bash 5.0

    Resolves: #1675080

I have no idea why Fedora CI test fail... It is obviously that the package is installable.

For reference this is the error from ci logs:

Problem 1: cannot install the best candidate for the job

  - nothing provides libreadline.so.8()(64bit) needed by bash-5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46.x86_64

 Problem 2: package bash-doc-5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46.x86_64 requires bash = 5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46, but none of the providers can be installed

  - cannot install the best candidate for the job

  - nothing provides libreadline.so.8()(64bit) needed by bash-5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46.x86_64

 Problem 3: package bash-devel-5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46.x86_64 requires bash(x86-64) = 5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46, but none of the providers can be installed

  - cannot install the best candidate for the job

  - nothing provides libreadline.so.8()(64bit) needed by bash-5.0.2-2.fc30.pr.04a16e438bf648ba812cfe7bd0f2ab46.x86_64

(try to add '--skip-broken' to skip uninstallable packages)

virt-customize: error: yum install -y --best --allowerasing --nogpgcheck  

bash bash-devel bash-doc && yum clean all: command exited with an error

I tried a readline update on rawhide and latest package is readline-7.0-13.fc30.x86_64, that's why CI fails.

I tried a readline update on rawhide and latest package is readline-7.0-13.fc30.x86_64, that's why CI fails.

But it is available in Koji ;) Rawhide composes might not happen for days, but builds won't stop working.

Does it mean that the original reasons for not linking readline dynamically are no longer valid?

https://bugzilla.redhat.com/144749#c9

If so, please make sure that the above bug is referred from the change log entry and the commit message.

@kdudka thanks for linking the bugreport!

On 10k bash executions, I see this: 10.834194 → 12.802899.. So the diff is between 1 and 2 seconds.

static

     11313: 
     11313: runtime linker statistics:
     11313:   total startup time in dynamic loader: 2835337 cycles
     11313:         time needed for relocation: 1424680 cycles (50.2%)
     11313:                  number of relocations: 552
     11313:       number of relocations from cache: 3
     11313:         number of relative relocations: 5118
     11313:        time needed to load objects: 1004337 cycles (35.4%)
     11313: 
     11313: runtime linker statistics:
     11313:            final number of relocations: 554
     11313: final number of relocations from cache: 3

dynamic

     10535: 
     10535: runtime linker statistics:
     10535:   total startup time in dynamic loader: 1707980 cycles
     10535:         time needed for relocation: 1058545 cycles (61.9%)
     10535:                  number of relocations: 1595
     10535:       number of relocations from cache: 679
     10535:         number of relative relocations: 4215
     10535:        time needed to load objects: 485333 cycles (28.4%)
     10535: 
     10535: runtime linker statistics:
     10535:            final number of relocations: 1597
     10535: final number of relocations from cache: 679

I see no major benefit to use dynamic linking, so I am closing this pull request.

Pull-Request has been closed by svashisht

14 days ago