I have a habit of setting: export GLIBC_TUNABLES=glibc.malloc.check=1:glibc.malloc.perturb=99 which causes glibc to do extra malloc integrity checks. In Rawhide at the moment I'm seeing memory corruption in calls like getpwnam and gethostbyname. Unfortunately I don't have a simple reproducer yet, but two example stack traces are below. I have the latest glibc and systemd. Questions: Has anyone seen this before, and what component should I file the bug against? Rich. Core was generated by `tar -C /var/tmp/supermin36875b.tmpdir/base.d -xf -'. Program terminated with signal SIGSEGV, Segmentation fault. #0 malloc_check_get_size (mem=0x0) at /usr/src/debug/glibc-2.34.9000-15.fc36.x86_64/malloc/malloc-check.c:39 39 magic = (((uintptr_t) p >> 3) ^ ((uintptr_t) p >> 11)) & 0xFF; (gdb) bt #0 malloc_check_get_size (mem=0x0) at /usr/src/debug/glibc-2.34.9000-15.fc36.x86_64/malloc/malloc-check.c:39 #1 malloc_usable_size (mem=0x0) at malloc-debug.c:405 #2 0x00007f0eed847f1a in varlink_read (v=0x55c537e3e1c0) at ../src/shared/varlink.c:508 #3 varlink_process.isra.0 (v=0x55c537e3e1c0) at ../src/shared/varlink.c:959 #4 0x00007f0eed83790a in defer_callback (s=<optimized out>, userdata=<optimized out>) at ../src/shared/varlink.c:1862 #5 0x00007f0eed840e21 in source_dispatch (s=0x55c537e471c0) at ../src/libsystemd/sd-event/sd-event.c:3544 #6 0x00007f0eed834d4c in sd_event_dispatch (e=<optimized out>) at ../src/libsystemd/sd-event/sd-event.c:4078 #7 sd_event_run (timeout=18446744073709551615, e=<optimized out>) at ../src/libsystemd/sd-event/sd-event.c:4139 #8 userdb_process.part.0.lto_priv.0 (iterator=0x55c537e3e410, ret_user_record=0x7ffc22b7dd98, ret_group_record=0x0, ret_user_name=0x0, ret_group_name=0x0) at ../src/shared/userdb.c:594 #9 0x00007f0eed836212 in userdb_process (ret_group_name=0x0, ret_user_name=0x0, ret_group_record=0x0, ret_user_record=0x7ffc22b7dd98, iterator=0x55c537e3e410) at ../src/shared/userdb.c:530 #10 userdb_by_name (name=0x55c537e39109 "mockbuild", flags=9, ret=0x7ffc22b7dd98) at ../src/shared/userdb.c:640 #11 0x00007f0eed81cb2c in userdb_getpwnam (errnop=<synthetic pointer>, buflen=1024, buffer=0x55c537e37370 "debuginfod", pwd=0x7f0eee3ee520 <resbuf>, name=0x55c537e39109 "mockbuild") at ../src/nss-systemd/userdb-glue.c:20 #12 _nss_systemd_getpwnam_r (name=0x55c537e39109 "mockbuild", pwd=0x7f0eee3ee520 <resbuf>, buffer=0x55c537e37370 "debuginfod", buflen=1024, errnop=0x7f0eee143690) at ../src/nss-systemd/nss-systemd.c:330 #13 0x00007f0eee2c7f00 in __getpwnam_r ( name=name@entry=0x55c537e39109 "mockbuild", resbuf=resbuf@entry=0x7f0eee3ee520 <resbuf>, buffer=<optimized out>, buflen=buflen@entry=1024, result=result@entry=0x7ffc22b7df30) at ../nss/getXXbyYY_r.c:273 #14 0x00007f0eee2c7964 in getpwnam (name=name@entry=0x55c537e39109 "mockbuild") at ../nss/getXXbyYY.c:135 #15 0x000055c5360ad519 in uname_to_uid ( uname=uname@entry=0x55c537e39109 "mockbuild", uidp=uidp@entry=0x55c5361043b4 <current_stat_info+116>) at /usr/src/debug/tar-1.34-2.fc35.x86_64/src/names.c:545 #16 0x000055c5360adcb0 in decode_header (header=0x55c537e39000, stat_info=stat_info@entry=0x55c536104340 <current_stat_info>, format_pointer=format_pointer@entry=0x55c5361042c8 <current_format>, do_user_group=do_user_group@entry=1) at /usr/src/debug/tar-1.34-2.fc35.x86_64/src/list.c:698 #17 0x000055c5360b1a41 in read_and ( do_something=0x55c53609cc40 <extract_archive>) at /usr/src/debug/tar-1.34-2.fc35.x86_64/src/list.c:194 #18 0x000055c536090fce in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/tar-1.34-2.fc35.x86_64/src/tar.c:2806 Core was generated by `/home/rjones/d/nbdkit/server/nbdkit -v -P test-vddk-real.pid -U /tmp/nbdkit-tes'. Program terminated with signal SIGSEGV, Segmentation fault. #0 malloc_check_get_size (mem=0x0) at /usr/src/debug/glibc-2.34.9000-15.fc36.x86_64/malloc/malloc-check.c:39 39 magic = (((uintptr_t) p >> 3) ^ ((uintptr_t) p >> 11)) & 0xFF; [Current thread is 1 (Thread 0x7f24e77c3640 (LWP 1291663))] #0 malloc_check_get_size (mem=0x0) at /usr/src/debug/glibc-2.34.9000-15.fc36.x86_64/malloc/malloc-check.c:39 #1 malloc_usable_size (mem=0x0) at malloc-debug.c:405 #2 0x00007f24e6fa999b in greedy_realloc0 (p=p@entry=0x7f24e77c10b0, need=need@entry=2, size=size@entry=16) at ../src/basic/alloc-util.c:87 #3 0x00007f24e6fa9b13 in netlink_container_parse (m=m@entry=0x55ef631e2f90, container=0x55ef631e2fa0, rta=0x55ef631ed208, rt_len=<optimized out>) at ../src/libsystemd/sd-netlink/netlink-message.c:1078 #4 0x00007f24e6fad7ec in sd_netlink_message_rewind (genl=<optimized out>, m=<optimized out>) at ../src/libsystemd/sd-netlink/netlink-message.c:1324 #5 socket_read_message (rtnl=<optimized out>) at ../src/libsystemd/sd-netlink/netlink-socket.c:375 #6 sd_netlink_read (usec=0, ret=0x7f24e77c1290, serial=<optimized out>, rtnl=<optimized out>) at ../src/libsystemd/sd-netlink/sd-netlink.c:700 #7 sd_netlink_call (rtnl=<optimized out>, message=<optimized out>, ret=0x7f24e77c1290, usec=0) at ../src/libsystemd/sd-netlink/sd-netlink.c:743 #8 0x00007f24e6fb018e in local_addresses (af=2, ret=0x7f24e77c1368, ifindex=0, context=0x0) at ../src/shared/local-addresses.c:90 #9 0x00007f24e6fb10b9 in _nss_myhostname_gethostbyname3_r ( name=<optimized out>, af=<optimized out>, host=0x7f24e77c1590, buffer=0x7f24e77c1740 "\177", buflen=1024, errnop=0x7f24e77c34b8, h_errnop=0x7f24e77c1584, ttlp=0x0, canonp=0x0) at ../src/nss-myhostname/nss-myhostname.c:373 #10 0x00007f24e6fb13cb in _nss_myhostname_gethostbyname_r ( name=0x7f24e77c15f1 "pick.home.annexia.org", host=0x7f24e77c1590, buffer=0x7f24e77c1740 "\177", buflen=1024, errnop=0x7f24e77c34b8, h_errnop=0x7f24e77c1584) at ../src/nss-myhostname/nss-myhostname.c:514 #11 0x00007f24ed6c523b in __gethostbyname_r ( name=0x7f24e77c15f1 "pick.home.annexia.org", resbuf=0x7f24e77c1590, buffer=<optimized out>, buflen=1024, result=<optimized out>, h_errnop=0x7f24e77c1584) at ../nss/getXXbyYY_r.c:273 [stack goes into some proprietary code after this point] -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com libguestfs lets you edit virtual machines. Supports shell scripting, bindings from many languages. http://libguestfs.org _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure