FYI, rawhide makes /usr/bin/install (matchpathcon) segfault
Daniel J Walsh
dwalsh at redhat.com
Wed Sep 7 13:37:38 UTC 2011
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 09/07/2011 04:01 AM, Jim Meyering wrote:
> I was getting ready to release coreutils-8.13, after two
> pre-release snapshots,
>
> http://thread.gmane.org/gmane.comp.gnu.coreutils.general/1554
> http://thread.gmane.org/gmane.comp.gnu.coreutils.general/1631
>
> when I went to make sure its tests all pass also on rawhide. I test
> that regularly, and they've all been passing (of course), so I
> didn't expect any surprises. I certainly didn't expect 7
> failures, and never something as basic as this:
>
> $ touch a $ env -i /usr/bin/install a b zsh: segmentation fault
> env -i /usr/bin/install a b [Exit 139 (SEGV)]
>
> [the "env -i " prefix is just to ensure that none of my
> MALLOC_DEBUG_ or MALLOC_PERTURB_ settings (or any other envvar) is
> causing trouble. ]
>
> gdb shows that it's officially a NULL-deref, but says there's a
> "Corrupted DWARF expression", probably discovered in read_sleb128:
>
> $ env -i gdb -q --args /usr/bin/install a b Reading symbols from
> /usr/bin/install...Reading symbols from
> /usr/lib/debug/usr/bin/install.debug...done. done. (gdb) r Starting
> program: /usr/bin/install a b [Thread debugging using libthread_db
> enabled] Using host libthread_db library
> "/lib64/libthread_db.so.1".
>
> Program received signal SIGSEGV, Segmentation fault. __strtok_r_1c
> (__nextp=read_sleb128: Corrupted DWARF expression. ) at
> /usr/include/bits/string2.h:1179 1179 while (*__s == __sep)
> (gdb) p __s $1 = 0x0 (gdb) bt #0 __strtok_r_1c
> (__nextp=read_sleb128: Corrupted DWARF expression. ) at
> /usr/include/bits/string2.h:1179 #1 init (rec=0x626930,
> opts=0x7ffff7fe2718, n=<optimized out>) at label_file.c:440 #2
> 0x00007ffff7bc4b3d in selabel_open (backend=0,
> opts=0x7ffff7fe2718, nopts=5) at label.c:165 #3 0x00007ffff7bc3e16
> in matchpathcon_init_prefix_internal (path=0x0, subset=0x0) at
> matchpathcon.c:321 #4 0x00007ffff7bc40a9 in matchpathcon
> (path=0x7fffffffefbf "b", mode=33261, con=0x7fffffffeb98) at
> matchpathcon.c:406 #5 0x000000000040452f in setdefaultfilecon
> (file=0x7fffffffefbf "b") at install.c:345 #6 change_attributes
> (name=0x7fffffffefbf "b") at install.c:471 #7 install_file_in_file
> (from=<optimized out>, to=0x7fffffffefbf "b", x=<optimized out>) at
> install.c:672 #8 0x0000000000403cd6 in main (argc=<optimized out>,
> argv=<optimized out>) at install.c:978 (gdb)
>
> So install is just the messenger, since it's calling libselinux's
> matchpathcon function, in which all of this is happening. Given the
> dwarf corruption, libselinux may be a messenger, too, but for now,
> I've just put all this in a BZ:
>
> http://bugzilla.redhat.com/736259
>
> This seems so fundamental that I have to wonder if it's something
> specific to my own set-up...
Grab libselinux-2.1.5-3.fc17 out of koji, should fix the problem.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk5nc6IACgkQrlYvE4MpobNDmACeIXdcOS371tlTRGH/hjojGIHA
SSMAnR8xu2PTr5zgGgzHZX9JkuxKMvOZ
=DFrb
-----END PGP SIGNATURE-----
More information about the devel
mailing list