Comment 26 for bug 1928075

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Bisect completed.
I deleted the PPAs as they are no more needed.

$ grep -e '^DEBUG' -e '^Com' bisect.log
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-1511-g381063d778'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-755-ge65cec5e5d'
DEBUG: latest result is 'Segmentation fault (core dumped)'
Completed - RC=0
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-1133-gfa7c8e92cb'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-944-gfe4c15798a'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-849-g8c3fe75e03'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-802-gbe9612e8cb'
DEBUG: latest result is 'Segmentation fault (core dumped)'
Completed - RC=0
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-821-g7cea426c1d'
DEBUG: latest result is 'Segmentation fault (core dumped)'
Completed - RC=0
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-799-gfa857eb570'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-792-g08e3ce59fc'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-788-g5ae774a91f'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-787-g6fd5944980'
DEBUG: latest result is ' duplicate value for 'Package' field'
Completed - RC=1
DEBUG: saved as '/home/ubuntu/qemu-aarch64-static.bisect.v4.2.0-786-g91c8bdb1e6'
DEBUG: latest result is 'Segmentation fault (core dumped)'
Completed - RC=0

$ git bisect log
git bisect start
# old: [b0ca999a43a22b38158a222233d3f5881648bb4f] Update version for v4.2.0 release
git bisect old b0ca999a43a22b38158a222233d3f5881648bb4f
# new: [fdd76fecdde1ad444ff4deb7f1c4f7e4a1ef97d6] Update version for v5.0.0 release
git bisect new fdd76fecdde1ad444ff4deb7f1c4f7e4a1ef97d6
# new: [381063d778a5aa9dcf84a2284a192d84746b2e0f] linux-user: microblaze: Update syscall numbers to kernel 5.5 level
git bisect new 381063d778a5aa9dcf84a2284a192d84746b2e0f
# old: [e65cec5e5d97927d22b39167d3e8edeffc771788] migration/ram: Yield periodically to the main loop
git bisect old e65cec5e5d97927d22b39167d3e8edeffc771788
# new: [fa7c8e92cb9bb004359926497675a9b7d0099dfc] hw/arm/virt: Add missing 5.0 options call to 4.2 options
git bisect new fa7c8e92cb9bb004359926497675a9b7d0099dfc
# new: [fe4c15798a48143dd6b1f58d2d3cad12206ce211] virtiofsd: Convert lo_destroy to take the lo->mutex lock itself
git bisect new fe4c15798a48143dd6b1f58d2d3cad12206ce211
# new: [8c3fe75e0308ba2f01d160ace534b7e386cea808] virtiofsd: Remove unused enum fuse_buf_copy_flags
git bisect new 8c3fe75e0308ba2f01d160ace534b7e386cea808
# old: [be9612e8cbb4b5e5d4c5f66551db2b4d6e76495b] Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20200121' into staging
git bisect old be9612e8cbb4b5e5d4c5f66551db2b4d6e76495b
# old: [7cea426c1d2e12777a2e61d7970044981ff82aa8] Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging
git bisect old 7cea426c1d2e12777a2e61d7970044981ff82aa8
# new: [fa857eb570bb7ee05a171c59f9b2864dab2357c9] linux-user: Add support for getting/setting RTC periodic interrupt and epoch using ioctls
git bisect new fa857eb570bb7ee05a171c59f9b2864dab2357c9
# new: [08e3ce59fcf4a83c5be078e9783161310c769c20] linux-user: Add support for FDFMT<BEG|TRK|END> ioctls
git bisect new 08e3ce59fcf4a83c5be078e9783161310c769c20
# new: [5ae774a91f9a4b33996b62c18b16063edcf3b0b0] linux-user: Add support for FS_IOC_<GET|SET>VERSION ioctls
git bisect new 5ae774a91f9a4b33996b62c18b16063edcf3b0b0
# new: [6fd5944980f4ccee728ce34bdaffc117db50b34d] linux-user: Reserve space for brk
git bisect new 6fd5944980f4ccee728ce34bdaffc117db50b34d
# old: [91c8bdb1e6690fa2b6f107613271ae923126f098] linux-user:Fix align mistake when mmap guest space
git bisect old 91c8bdb1e6690fa2b6f107613271ae923126f098
# first new commit: [6fd5944980f4ccee728ce34bdaffc117db50b34d] linux-user: Reserve space for brk

commit 6fd5944980f4ccee728ce34bdaffc117db50b34d
Author: Richard Henderson <email address hidden>
Date: Fri Jan 17 13:02:45 2020 -1000

    linux-user: Reserve space for brk

    With bad luck, we can wind up with no space at all for brk,
    which will generally cause the guest malloc to fail.

    This bad luck is easier to come by with ET_DYN (PIE) binaries,
    where either the stack or the interpreter (ld.so) gets placed
    immediately after the main executable.

    But there's nothing preventing this same thing from happening
    with ET_EXEC (normal) binaries, during probe_guest_base().

    In both cases, reserve some extra space via mmap and release
    it back to the system after loading the interpreter and
    allocating the stack.

    The choice of 16MB is somewhat arbitrary. It's enough for libc
    to get going, but without being so large that 32-bit guests or
    32-bit hosts are in danger of running out of virtual address space.
    It is expected that libc will be able to fall back to mmap arenas
    after the limited brk space is exhausted.

    Launchpad: https://bugs.launchpad.net/qemu/+bug/1749393
    Signed-off-by: Richard Henderson <email address hidden>
    Reviewed-by: Alex Bennée <email address hidden>
    Tested-by: Alex Bennée <email address hidden>
    Message-Id: <email address hidden>
    Signed-off-by: Laurent Vivier <email address hidden>

 linux-user/elfload.c | 73 ++++++++++++++++++++++++++++++++++++++++------------
 linux-user/qemu.h | 1 +
 2 files changed, 57 insertions(+), 17 deletions(-)

And indeed I have looked at the found commit already in the past as I assumed before.
It was in bug 1749393 which fell through the cracks (me bad :-/) but this bug here made me re-find it.