缓慢的“ifconfig lo”

缓慢的“ifconfig lo”

如何诊断慢速环回接口?这是我在 Fedora23 机器上看到的内容:

$ time ifconfig lo
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 17881  bytes 39772920 (37.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 17881  bytes 39772920 (37.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


real    0m2.230s
user    0m0.001s
sys     0m0.001s

在我的所有其他盒子上,相同的命令都在 0.001 秒内执行。

编辑: strace 的完整输出:

$ strace -r -s9999 ifconfig lo
     0.000000 execve("/usr/sbin/ifconfig", ["ifconfig", "lo"], [/* 51 vars */]) = 0
     0.000407 brk(0)                    = 0x5612d2cae000
     0.000082 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c9000
     0.000062 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
     0.000069 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
     0.000062 fstat(3, {st_mode=S_IFREG|0644, st_size=124105, ...}) = 0
     0.000053 mmap(NULL, 124105, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f1bbc7a0000
     0.000051 close(3)                  = 0
     0.000063 open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
     0.000056 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\6\2\0\0\0\0\0@\0\0\0\0\0\0\0P\1 \0\0\0\0\0\0\0\0\0@\0008\0\n\0@\0J\0I\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0000\2\0\0\0\0\0\0000\2\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\340\336\30\0\0\0\0\0\340\336\30\0\0\0\0\0\340\336\30\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\fn\33\0\0\0\0\0\fn\33\0\0\0\0\0\0\0 \0\0\0\0\0\1\0\0\0\6\0\0\0\240w\33\0\0\0\0\0\240w;\0\0\0\0\0\240w;\0\0\0\0\0\240O\0\0\0\0\0\0\240\222\0\0\0\0\0\0\0\0 \0\0\0\0\0\2\0\0\0\6\0\0\0\200\253\33\0\0\0\0\0\200\253;\0\0\0\0\0\200\253;\0\0\0\0\0\360\1\0\0\0\0\0\0\360\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\4\0\0\0\4\0\0\0p\2\0\0\0\0\0\0p\2\0\0\0\0\0\0p\2\0\0\0\0\0\0D\0\0\0\0\0\0\0D\0\0\0\0\0\0\0\4\0\0\0\0\0\0\0\7\0\0\0\4\0\0\0\240w\33\0\0\0\0\0\240w;\0\0\0\0\0\240w;\0\0\0\0\0\20\0\0\0\0\0\0\0x\0\0\0\0\0\0\0\10\0\0\0\0\0\0\0P\345td\4\0\0\0\374\336\30\0\0\0\0\0\374\336\30\0\0\0\0\0\374\336\30\0\0\0\0\0\24T\0\0\0\0\0\0\24T\0\0\0\0\0\0\4\0\0\0\0\0\0\0Q\345td\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0R\345td\4\0\0\0\240w\33\0\0\0\0\0\240w;\0\0\0\0\0\240w;\0\0\0\0\0`8\0\0\0\0\0\0`8\0\0\0\0\0\0\1\0\0\0\0\0\0\0\4\0\0\0\24\0\0\0\3\0\0\0GNU\0\360\217\3239R\367\366\240\321\261$F\337\20u\332G\330/M\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\6\0\0\0 \0\0\0\0\0\0\0\363\3\0\0\n\0\0\0\0\1\0\0\16\0\0\0\0000\20D\240 \2\1\210\3\346\220\305E\214\0\304\0\10\0\5\204\0`\300\200\0\r\212\f\0\4\20\0\210@2\10*@\210P<, \0162H&\204\300\214\4\10\0\2\2\16\241\254\32\4f\300\0\3002\0\300\0P\1 \201\10\204\v  ($\0\4 P\0\20X\200\312DB(\0\6\200\20\30B\0 @\200\0IP\0Q\212@\22\0\0\0\0\10\0\0\21\20", 832) = 832
     0.000086 fstat(3, {st_mode=S_IFREG|0755, st_size=2102224, ...}) = 0
     0.000051 mmap(NULL, 3934784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1bbc1d8000
     0.000056 mprotect(0x7f1bbc38f000, 2097152, PROT_NONE) = 0
     0.000057 mmap(0x7f1bbc58f000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b7000) = 0x7f1bbc58f000
     0.000062 mmap(0x7f1bbc595000, 14912, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc595000
     0.000061 close(3)                  = 0
     0.000064 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c8000
     0.000056 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c7000
     0.000060 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c6000
     0.000057 arch_prctl(ARCH_SET_FS, 0x7f1bbc7c7700) = 0
     0.000132 mprotect(0x7f1bbc58f000, 16384, PROT_READ) = 0
     0.000084 mprotect(0x5612d2153000, 4096, PROT_READ) = 0
     0.000054 mprotect(0x7f1bbc7c0000, 4096, PROT_READ) = 0
     0.000052 munmap(0x7f1bbc7a0000, 124105) = 0
     0.000148 brk(0)                    = 0x5612d2cae000
     0.000048 brk(0x5612d2ccf000)       = 0x5612d2ccf000
     0.000046 brk(0)                    = 0x5612d2ccf000
     0.000053 open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
     0.000064 fstat(3, {st_mode=S_IFREG|0644, st_size=110439232, ...}) = 0
     0.000051 mmap(NULL, 110439232, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f1bb5880000
     0.000056 close(3)                  = 0
     0.000092 uname({sysname="Linux", nodename="f23hop.local", ...}) = 0
     0.000077 access("/proc/net", R_OK) = 0
     0.000091 access("/proc/net/unix", R_OK) = 0
     0.000071 socket(PF_LOCAL, SOCK_DGRAM, 0) = 3
     0.000083 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
     0.000067 access("/proc/net/if_inet6", R_OK) = 0
     0.000066 socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 5
     0.000065 access("/proc/net/ax25", R_OK) = -1 ENOENT (No such file or directory)
     0.000065 access("/proc/net/nr", R_OK) = -1 ENOENT (No such file or directory)
     0.000062 access("/proc/net/rose", R_OK) = -1 ENOENT (No such file or directory)
     0.000063 access("/proc/net/ipx", R_OK) = -1 ENOENT (No such file or directory)
     0.000062 access("/proc/net/appletalk", R_OK) = -1 ENOENT (No such file or directory)
     0.000070 access("/proc/sys/net/ash", R_OK) = -1 ENOENT (No such file or directory)
     0.000066 access("/proc/net/x25", R_OK) = -1 ENOENT (No such file or directory)
     0.000080 open("/proc/net/dev", O_RDONLY) = 6
     0.000080 fstat(6, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
     0.000058 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c5000
     0.000063 read(6, "Inter-|   Receive                                                |  Transmit\n face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed\nwlp4s0f0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0\n    lo:     340       4    0    0    0     0          0         0      340       4    0    0    0     0       0          0\nenp1s0:  852201    5484    0    0    0     0          0       537   277020    2388    0    0    0     0       0          0\n", 1024) = 571
     0.000179 close(6)                  = 0
     0.000056 munmap(0x7f1bbc7c5000, 4096) = 0
     0.000065 ioctl(5, SIOCGIFFLAGS, {ifr_name="lo", ifr_flags=IFF_UP|IFF_LOOPBACK|IFF_RUNNING}) = 0
     0.000061 ioctl(5, SIOCGIFHWADDR, {ifr_name="lo", ifr_hwaddr=00:00:00:00:00:00}) = 0
     0.000056 ioctl(5, SIOCGIFMTU, {ifr_name="lo", ifr_mtu=65536}) = 0
     0.000054 ioctl(5, SIOCGIFMAP, {ifr_name="lo", ifr_map={mem_start=0, mem_end=0, base_addr=0, irq=0, dma=0, port=0}}) = 0
     0.000056 ioctl(5, SIOCGIFMAP, {ifr_name="lo", ifr_map={mem_start=0, mem_end=0, base_addr=0, irq=0, dma=0, port=0}}) = 0
     0.000054 ioctl(5, SIOCGIFTXQLEN, {ifr_name="lo", ifr_qlen=0}) = 0
     0.000064 open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 6
     0.000063 fstat(6, {st_mode=S_IFREG|0644, st_size=2997, ...}) = 0
     0.000055 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c5000
     0.000055 read(6, "# Locale name alias data base.\n# Copyright (C) 1996-2015 Free Software Foundation, Inc.\n#\n# This program is free software; you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation; either version 2, or (at your option)\n# any later version.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with this program; if not, see <http://www.gnu.org/licenses/>.\n\n# The format of this file is the same as for the corresponding file of\n# the X Window System, which normally can be found in\n#\t/usr/lib/X11/locale/locale.alias\n# A single line contains two fields: an alias and a substitution value.\n# All entries are case independent.\n\n# Note: This file is obsolete and is kept around for the time being for\n# backward compatibility.  Nobody should rely on the names defined here.\n# Locales should always be specified by their full name.\n\n# Note: This file used to contain the following lines:\n#\tbokmaal\t\tnb_NO.ISO-8859-1\n#\tfranc,ais\tfr_FR.ISO-8859-1\n# except that the \"aa\" was actually the byte '\\0xE5' (the Latin-1\n# encoding for U+00E5 LATIN SMALL LETTER A WITH RING ABOVE) and the\n# \"c,\" was actually the byte '\\xE7' (the Latin-1 encoding for U+00E7\n# LATIN SMALL LETTER C WITH CEDILLA).  These lines were removed\n# because they caused 'locale -a' to output text encoded in Latin-1,\n# which broke applications in UTF-8 locales.  See:\n# https://sourceware.org/bugzilla/show_bug.cgi?id=18412\n\nbokmal\t\tnb_NO.ISO-8859-1\ncatalan\t\tca_ES.ISO-8859-1\ncroatian\thr_HR.ISO-8859-2\nczech\t\tcs_CZ.ISO-8859-2\ndanish          da_DK.ISO-8859-1\ndansk\t\tda_DK.ISO-8859-1\ndeutsch\t\tde_DE.ISO-8859-1\ndutch\t\tnl_NL.ISO-8859-1\neesti\t\tet_EE.ISO-8859-1\nestonian\tet_EE.ISO-8859-1\nfinnish         fi_FI.ISO-8859-1\nfrench\t\tfr_FR.ISO-8859-1\ngalego\t\tgl_ES.ISO-8859-1\ngalician\tgl_ES.ISO-8859-1\ngerman\t\tde_DE.ISO-8859-1\ngreek           el_GR.ISO-8859-7\nhebrew          he_IL.ISO-8859-8\nhrvatski\thr_HR.ISO-8859-2\nhungarian       hu_HU.ISO-8859-2\nicelandic       is_IS.ISO-8859-1\nitalian         it_IT.ISO-8859-1\njapanese\tja_JP.eucJP\njapanese.euc\tja_JP.eucJP\nja_JP\t\tja_JP.eucJP\nja_JP.ujis\tja_JP.eucJP\njapanese.sjis\tja_JP.SJIS\nkorean\t\tko_KR.eucKR\nkorean.euc \tko_KR.eucKR\nko_KR\t\tko_KR.eucKR\nlithuanian      lt_LT.ISO-8859-13\nno_NO\t\tnb_NO.ISO-8859-1\nno_NO.ISO-8859-1 nb_NO.ISO-8859-1\nnorwegian       nb_NO.ISO-8859-1\nnynorsk\t\tnn_NO.ISO-8859-1\npolish          pl_PL.ISO-8859-2\nportuguese      pt_PT.ISO-8859-1\nromanian        ro_RO.ISO-8859-2\nrussian         ru_RU.ISO-8859-5\nslovak          sk_SK.ISO-8859-2\nslovene         sl_SI.ISO-8859-2\nslovenian       sl_SI.ISO-8859-2\nspanish         es_ES.ISO-8859-1\nswedish         sv_SE.ISO-8859-1\nthai\t\tth_TH.TIS-620\nturkish         tr_TR.ISO-8859-9\n", 4096) = 2997
     0.000148 read(6, "", 4096)         = 0
     0.000053 close(6)                  = 0
     0.000051 munmap(0x7f1bbc7c5000, 4096) = 0
     0.000089 open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/net-tools.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
     0.000059 open("/usr/share/locale/en_US.utf8/LC_MESSAGES/net-tools.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
     0.000057 open("/usr/share/locale/en_US/LC_MESSAGES/net-tools.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
     0.000058 open("/usr/share/locale/en.UTF-8/LC_MESSAGES/net-tools.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
     0.000056 open("/usr/share/locale/en.utf8/LC_MESSAGES/net-tools.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
     0.000057 open("/usr/share/locale/en/LC_MESSAGES/net-tools.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
     0.000069 ioctl(4, SIOCGIFADDR, {ifr_name="lo", ifr_addr={AF_INET, inet_addr("127.0.0.1")}}) = 0
     1.237654 ioctl(4, SIOCGIFDSTADDR, {ifr_name="lo", ifr_dstaddr={AF_INET, inet_addr("127.0.0.1")}}) = 0
     0.000085 ioctl(4, SIOCGIFBRDADDR, {ifr_name="lo", ifr_broadaddr={AF_INET, inet_addr("0.0.0.0")}}) = 0
     0.000067 ioctl(4, SIOCGIFNETMASK, {ifr_name="lo", ifr_netmask={AF_INET, inet_addr("255.0.0.0")}}) = 0
     0.000120 fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
     0.000070 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c5000
     0.000095 write(1, "lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536\n", 45lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
) = 45
     0.000090 write(1, "        inet 127.0.0.1  netmask 255.0.0.0\n", 42        inet 127.0.0.1  netmask 255.0.0.0
) = 42
     0.000080 open("/proc/net/if_inet6", O_RDONLY) = 6
     0.000169 fstat(6, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
     0.000237 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1bbc7c4000
     0.000082 read(6, "00000000000000000000000000000001 01 80 10 80       lo\nfe800000000000009eb654fffeb9ee8e 02 40 20 80   enp1s0\n", 1024) = 108
     0.000146 write(1, "        inet6 ::1  prefixlen 128  scopeid 0x10<host>\n", 53        inet6 ::1  prefixlen 128  scopeid 0x10<host>
) = 53
     0.000087 read(6, "", 1024)         = 0
     0.000062 read(6, "", 1024)         = 0
     0.000054 close(6)                  = 0
     0.000058 munmap(0x7f1bbc7c4000, 4096) = 0
     0.000072 write(1, "        loop  txqueuelen 0  (Local Loopback)\n", 45        loop  txqueuelen 0  (Local Loopback)
) = 45
     0.000078 write(1, "        RX packets 4  bytes 340 (340.0 B)\n", 42        RX packets 4  bytes 340 (340.0 B)
) = 42
     0.000079 write(1, "        RX errors 0  dropped 0  overruns 0  frame 0\n", 52        RX errors 0  dropped 0  overruns 0  frame 0
) = 52
     0.000068 write(1, "        TX packets 4  bytes 340 (340.0 B)\n", 42        TX packets 4  bytes 340 (340.0 B)
) = 42
     0.000067 write(1, "        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0\n", 67        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
) = 67
     0.000062 write(1, "\n", 1
)         = 1
     0.000058 close(5)                  = 0
     0.000064 exit_group(0)             = ?
     0.000217 +++ exited with 0 +++

相关内容