Midnight Commander slow to start

Piscium groknok at gmail.com
Mon Mar 4 22:09:44 UTC 2013


Midnight Commander is slow to start for me on two PCs (one very new
and the other 6 years old). I am running Fedora 18 64 bits. I already
filed an issue in the Red Hat bugzilla. I was thinking that somebody
in this forum might spot easily what is wrong? I am pasting below my
Fedora bug report.

If somebody knows a fix I could give it a try on my PC by patching the
code and rebuilding the RPM.

Thanks in advance.


=================

$ mc -V
GNU Midnight Commander 4.8.7
Built with GLib 2.34.2
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 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;


=====================================================

Description of problem:
Midnight Commander is taking 30 seconds to start on my new PC running F18.


Version-Release number of selected component (if applicable):
4.8.7

How reproducible:
Always (on my PC).

Steps to Reproduce:
1. Start mc from a terminal, either as root or normal user.
2.
3.

Actual results:
It takes 30 seconds for Midnight Commander panes to appear.

Expected results:
Should take 0.1 second!

Additional info:
I installed some debuginfos and called mc with gdb. I stopped it
running with Ctrl-C after a couple of seconds, and got the call trace
below. I did this twice and got seemingly the same trace (I have not
checked all the details). The goal of the exercise was to find where
mc was hanging. Unfortunately I do not have the time to go through the
whole trace trying to find the actual cause of the problem, but it is
probably obvious for someone that know the code base.

The trace shows that the host name is "tornado". That is correct, I
set it myself to that by modifying /etc/hostname. The trace also shows
that the domain name is "home". I have no idea where that came from. I
don't remember setting it, and if I run the domainname command I get
(none).

====================
GNU gdb (GDB) Fedora (7.5.1-32.fc18)
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/mc...Reading symbols from
/usr/lib/debug/usr/bin/mc.debug...done.
done.
(gdb) run
Starting program: /usr/bin/mc
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
^C
Program received signal SIGINT, Interrupt.
0x00000033682e9970 in __poll_nocancel () at
../sysdeps/unix/syscall-template.S:81
81	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
(gdb) bt
#0  0x00000033682e9970 in __poll_nocancel () at
../sysdeps/unix/syscall-template.S:81
#1  0x000000336a60ac05 in send_dg (resplen2=0x0, anssizp2=0x0,
ansp2=0x0, anscp=0x7fffffffd5c0,
    gotsomewhere=<synthetic pointer>, v_circuit=<synthetic pointer>,
ns=0, terrno=0x7fffffffc540, anssizp=
    0x7fffffffc690, ansp=0x7fffffffc538, buflen2=0, buf2=0x0,
buflen=30, buf=0x7fffffffc6c0 "\362\242\001", statp=
    0x33685b5b00 <_res at GLIBC_2.2.5>) at res_send.c:1059
#2  __libc_res_nsend (statp=statp at entry=0x33685b5b00
<_res at GLIBC_2.2.5>, buf=buf at entry=0x7fffffffc6c0 "\362\242\001",
    buflen=30, buf2=buf2 at entry=0x0, buflen2=0,
ans=ans at entry=0x7fffffffd190  <incomplete sequence \362\242\201>,
    anssiz=anssiz at entry=1024, ansp=ansp at entry=0x7fffffffd5c0,
ansp2=ansp2 at entry=0x0, nansp2=nansp2 at entry=0x0,
    resplen2=resplen2 at entry=0x0) at res_send.c:556
#3  0x000000336a608be0 in __GI___libc_res_nquery
(statp=statp at entry=0x33685b5b00 <_res at GLIBC_2.2.5>, name=name at entry=
    0x7fffffffcd10 "tornado.home", class=class at entry=1,
type=type at entry=1, answer=answer at entry=
    0x7fffffffd190  <incomplete sequence \362\242\201>,
anslen=anslen at entry=1024, answerp=answerp at entry=
    0x7fffffffd5c0, answerp2=answerp2 at entry=0x0,
nanswerp2=nanswerp2 at entry=0x0, resplen2=resplen2 at entry=0x0)
    at res_query.c:226
#4  0x000000336a609600 in __libc_res_nquerydomain (resplen2=0x0,
nanswerp2=0x0, answerp2=0x0, answerp=0x7fffffffd5c0,
    anslen=1024, answer=0x7fffffffd190  <incomplete sequence
\362\242\201>, type=1, class=1, domain=
    0x33685b5b80 <_res at GLIBC_2.2.5+128> "home", name=0x92c770
"tornado", statp=0x33685b5b00 <_res at GLIBC_2.2.5>)
    at res_query.c:582
#5  __GI___libc_res_nsearch (statp=0x33685b5b00 <_res at GLIBC_2.2.5>,
name=name at entry=0x92c770 "tornado",
    class=class at entry=1, type=type at entry=1,
answer=answer at entry=0x7fffffffd190  <incomplete sequence
\362\242\201>,
    anslen=anslen at entry=1024, answerp=0x7fffffffd5c0,
answerp2=answerp2 at entry=0x0, nanswerp2=nanswerp2 at entry=0x0,
    resplen2=resplen2 at entry=0x0) at res_query.c:416
#6  0x00007ffff179d692 in __GI__nss_dns_gethostbyname3_r
(name=name at entry=0x92c770 "tornado", af=af at entry=2,
    result=result at entry=0x33685b5ea0 <resbuf.13232>,
buffer=buffer at entry=0x92d220 "\177", buflen=buflen at entry=1024,
    errnop=errnop at entry=0x7ffff7fc8780,
h_errnop=h_errnop at entry=0x7fffffffdb50, ttlp=ttlp at entry=0x0,
    canonp=canonp at entry=0x0) at nss_dns/dns-host.c:192
#7  0x00007ffff179d964 in _nss_dns_gethostbyname_r (name=0x92c770
"tornado", result=0x33685b5ea0 <resbuf.13232>,
    buffer=0x92d220 "\177", buflen=1024, errnop=0x7ffff7fc8780,
h_errnop=0x7fffffffdb50) at nss_dns/dns-host.c:268
#8  0x000000336830bab5 in __gethostbyname_r (name=name at entry=0x92c770
"tornado", resbuf=resbuf at entry=
    0x33685b5ea0 <resbuf.13232>, buffer=0x92d220 "\177", buflen=1024,
result=result at entry=0x7fffffffdb60,
    h_errnop=h_errnop at entry=0x7fffffffdb50) at ../nss/getXXbyYY_r.c:255
#9  0x000000336830b2dd in gethostbyname (name=name at entry=0x92c770
"tornado") at ../nss/getXXbyYY.c:116
#10 0x00000000004b5695 in sys_gethostbyname (name=name at entry=0x92c770
"tornado") at lib/system.c:303
#11 0x00000000004b3c75 in Get_Hostbyname (name=<optimized out>) at
lib/util.c:2479
#12 0x00000000004b4009 in get_myname (my_name=0x73fe60 <myhostname>
"", ip=ip at entry=0x0) at lib/util.c:1845
#13 0x000000000046b20f in smbfs_init (me=0x738040) at smbfs.c:389
#14 0x000000000046060f in vfs_register_class (vfs=vfs at entry=0x738040)
at vfs.c:297
#15 0x000000000046e640 in init_smbfs () at smbfs.c:2263
#16 0x0000000000468828 in vfs_plugins_init () at plugins_init.c:126
#17 0x000000000040fee0 in main (argc=1, argv=0x7fffffffe1c8) at main.c:296



More information about the mc-devel mailing list