Git Product home page Git Product logo

Comments (5)

derekbruening avatar derekbruening commented on June 19, 2024

Xref glibc causing pain in other ways: #5860. One possibility is to stop supporting glibc in clients and DR's own "normal" binaries: require clients to use musl or somesuch, and switch to musl in DR's binaries, since the glibc owners are making it quite difficult to keep using it in our project not just for the private loader but also for "normal" uses such as in the drrun launcher where we want backward compatibility without having to build on an old toolchain.

from dynamorio.

MikeWalrus avatar MikeWalrus commented on June 19, 2024

In my opinion, DynamoRIO's capability of being able to work with system glibc reasonably well is a great advantage over pin. I think we should just keep an eye on new versions of glibc and fix broken fields, unless this becomes too unmanageable of course. :)

from dynamorio.

derekbruening avatar derekbruening commented on June 19, 2024

In my opinion, DynamoRIO's capability of being able to work with system glibc reasonably well is a great advantage over pin. I think we should just keep an eye on new versions of glibc and fix broken fields, unless this becomes too unmanageable of course. :)

This is useful feedback. Could you elaborate: are there features missing from musl you want to use in your clients, or you want to avoid having to build/link your clients in non-standard ways?

from dynamorio.

MikeWalrus avatar MikeWalrus commented on June 19, 2024

are there features missing from musl you want to use in your clients, or you want to avoid having to build/link your clients in non-standard ways?

I'd say it's more of the latter, although I can imagine someone would prefer glibc because of its performance or some third-party libraries require glibc.

from dynamorio.

jdw1023 avatar jdw1023 commented on June 19, 2024

Hi, I am running into the SIGFPE crash on Arch Linux using glibc 2.39-4.
After some investigation, it looks like the offset changed in the glibc 2.39(-4?) on Arch Linux. I am not sure why the offset is different (the offset in d21d6e3 looks like the right offset with using glibc 2.39-0ubuntu8.1_amd64 on ubuntu).

Left Arch Linux glibc 2.39-4, Right Ubuntu glibc 2.39-0ubuntu8.1_amd64
image

I got drrun to work after patching offset to the following. Just want to leave this comment incase anyone ran into the same issue.

+0x02d8 _dl_tls_static_size  : size_t
+0x02e0 _dl_tls_static_align : size_t

glibc version info:

% /usr/lib/libc.so.6
GNU C Library (GNU libc) stable release version 2.39.
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 13.2.1 20240417.
libc ABIs: UNIQUE IFUNC ABSOLUTE
Minimum supported kernel: 4.4.0
For bug reporting instructions, please see:
<https://gitlab.archlinux.org/archlinux/packaging/packages/glibc/-/issues>.
% pacman -Q glibc
glibc 2.39-4

from dynamorio.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.