Ticket #4001 (closed defect: duplicate)

Opened 3 years ago

Last modified 3 years ago

segfault in vfs_stamp_compare()

Reported by: post-factum Owned by:
Priority: minor Milestone:
Component: mc-vfs Version: 4.8.23
Keywords: Cc:
Blocked By: Blocking:
Branch state: no branch Votes for changeset:


Happens after browsing RPM/CPIO archives in a while (it seems like it happens when GC kicks in). It is reproducible on demand.

(gdb) bt
#0 0x000055ff5cb98808 in vfs_stamp_compare (a=0x0, b=0x7fff21c15a40) at gc.c:130
#1 0x00007f221da12d11 in g_slist_find_custom () from /usr/lib/libglib-2.0.so.0
#2 0x000055ff5cb9895e in vfs_rmstamp (v=<optimized out>, id=id@entry=0x0) at gc.c:186
#3 0x000055ff5cb98a93 in vfs_stamp_create (vclass=vclass@entry=0x55ff5ccc82a0 <extfs_subclass>, id=0x55ff5d602a00) at gc.c:234
#4 0x000055ff5cc2130d in extfs_close (fh=0x55ff5d548a50) at extfs.c:1002
#5 0x000055ff5cba23be in mc_close (handle=100) at interface.c:410
#6 0x000055ff5cc1f792 in cpio_free_archive (me=<optimized out>, super=0x55ff5d5580e0) at cpio.c:217
#7 0x000055ff5cbdc542 in vfs_s_free_super (me=0x55ff5ccc7060 <cpio_subclass>, super=0x55ff5d5580e0) at direntry.c:351
#8 0x000055ff5cb98c32 in vfs_expire (now=0) at gc.c:293
#9 vfs_expire (now=0) at gc.c:251
#10 0x000055ff5cba5445 in tty_get_event (event=event@entry=0x7fff21c15d50, redo_event=0, block=block@entry=1) at key.c:2053
#11 0x000055ff5cb93ef7 in frontend_dlg_run (h=0x55ff5d50db10) at dialog.c:542
#12 dlg_run (h=0x55ff5d50db10) at dialog.c:1197
#13 0x000055ff5cbad9b4 in do_nc () at midnight.c:1783
#14 0x000055ff5cb87750 in main (argc=<optimized out>, argv=<optimized out>) at main.c:409

(gdb) disass
Dump of assembler code for function vfs_stamp_compare:

0x000055ff5cb98800 <+0>: mov (%rsi),%rdx
0x000055ff5cb98803 <+3>: mov $0x1,%eax

=> 0x000055ff5cb98808 <+8>: cmp %rdx,(%rdi)

0x000055ff5cb9880b <+11>: je 0x55ff5cb98810 <vfs_stamp_compare+16>
0x000055ff5cb9880d <+13>: retq
0x000055ff5cb9880e <+14>: xchg %ax,%ax
0x000055ff5cb98810 <+16>: mov 0x8(%rsi),%rax
0x000055ff5cb98814 <+20>: cmp %rax,0x8(%rdi)
0x000055ff5cb98818 <+24>: setne %al
0x000055ff5cb9881b <+27>: movzbl %al,%eax
0x000055ff5cb9881e <+30>: retq

End of assembler dump.

More info on the environment below:

[~]$ LC_MESSAGES=C mc -V
GNU Midnight Commander 4.8.23
Built with GLib 2.60.5
Using the S-Lang library with terminfo database
With builtin Editor
With subshell support as default
With support for background operations
With mouse support on xterm and Linux console
With support for X11 events
With internationalization support
With multiple codepages support
Virtual File Systems: cpiofs, tarfs, sfs, extfs, ftpfs, sftpfs, fish, smbfs
Data types: char: 8; int: 32; long: 64; void *: 64; size_t: 64; off_t: 64;

[~]$ LC_MESSAGES=C mc -F
Home directory: /home/onatalen
Profile root directory: /home/onatalen

[System data]

Config directory: /etc/mc/
Data directory: /usr/share/mc/
File extension handlers: /usr/lib/mc/ext.d/
VFS plugins and scripts: /usr/lib/mc/

extfs.d: /usr/lib/mc/extfs.d/
fish: /usr/lib/mc/fish/

[User data]

Config directory: /home/onatalen/.config/mc/
Data directory: /home/onatalen/.local/share/mc/

skins: /home/onatalen/.local/share/mc/skins/
extfs.d: /home/onatalen/.local/share/mc/extfs.d/
fish: /home/onatalen/.local/share/mc/fish/
mcedit macros: /home/onatalen/.local/share/mc/mc.macros
mcedit external macros: /home/onatalen/.local/share/mc/mcedit/macros.d/macro.*

Cache directory: /home/onatalen/.cache/mc/

[~]$ mc --configure-options

'--prefix=/usr' '--libexecdir=/usr/lib' '--sysconfdir=/etc' '--enable-vfs-smb' '--with-screen=slang' '--with-x' 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -g -fvar-tracking-assignments -fdebug-prefix-map=/home/onatalen/mc/src=/usr/src/debug' 'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now' 'CPPFLAGS=-D_FORTIFY_SOURCE=2'

Change History

comment:1 Changed 3 years ago by post-factum

  • Component changed from mc-core to mc-vfs

comment:2 Changed 3 years ago by andrew_b

  • Status changed from new to closed
  • Resolution set to duplicate
  • Milestone Future Releases deleted

Closed as duplicate of #3432.

Note: See TracTickets for help on using tickets.