FISH randomly hangs in the middle of a big copy for sh://host/
Marc MERLIN
marc at merlins.org
Sun Sep 14 00:18:10 UTC 2014
Hi,
Could you tell me how I can best file this bug in a way that you can
find out what's wrong?
This has happened with mc over multiple versions and years, currently
I have 4.8.12. Only interesting thing is linux/64bit with 32bit userland.
Maybe one file out of 20, mostly big files (over a gigabyte), copying
from sh://host/path/file hangs.
On the other side, if I strace the perl code launched via FISH, I see
data flowing from the file to the pipe, even 2h after the UI has hung on
the client making the copy.
read(3, "\356\'\r#mU\304\v((\320\324`\337\311\35\332\350\331\177"..., 8192) = 8192
write(1, "\1\305*\213\220\244z\371\370\2~\340\277\231/\364\235e!"..., 8192) = 8192
read(3, "\27\202S\35E\241G\302S\302\fj\37v0K\306z\276\260B\350\263"..., 8192) = 8192
write(1, "}\350oR\262\212j\\\277\313\1\177\254\36\213\237-\227\21"..., 8192) = 8192
read(3, "\344\261\272\32\35\2675\5\366\326c$-\'\305\313V\3770\313"..., 8192) = 8192
I'm not sure where that data is going since pipes don't have unlimited
buffering.
On the client, I have this:
|-bash(15452)---mc(6558)-+-bash(6560)
| `-ssh(7305)
kill -STOP 7305 on the client causes the strace perl on the other machine
to stop flowing.
I'm not too sure where that data is going, process 7305 says:
ssh 7305 root 0r FIFO 0,8 63158081 pipe
ssh 7305 root 1w FIFO 0,8 63158082 pipeg
ssh 7305 root 2w CHR 1,3 1028 /dev/null
ssh 7305 root 3u IPv4 63159122 TCP client:43163->server:ssh (ESTABLISHED)
ssh 7305 root 4r FIFO 0,8 63158081 pipe
ssh 7305 root 5w FIFO 0,8 63158082 pipe
ssh 7305 root 6w CHR 1,3 1028 /dev/null
strace shows ssh is reading from FH 3, but I can't tell where it's
shoving the data:
read(3, "\0\0@\20\2365,\224\304hx$\312M\251\262\17\236D\352\354I\211\212\213+\253\3161\200@\\"..., 8192) = 1448
clock_gettime(CLOCK_MONOTONIC, {548105, 51688985}) = 0
clock_gettime(CLOCK_MONOTONIC, {548105, 51787475}) = 0
select(7, [3 4], [], NULL, NULL) = 1 (in [3])
clock_gettime(CLOCK_MONOTONIC, {548105, 51971095}) = 0
read(3, "\33{\303\3122\237!!\206\216u\321\275\265N\341\220\264\221G\6\266\227 \314\212\377\r\371\177\247\36"..., 8192) = 1448
clock_gettime(CLOCK_MONOTONIC, {548105, 53168084}) = 0
clock_gettime(CLOCK_MONOTONIC, {548105, 53254841}) = 0
select(7, [3 4], [], NULL, NULL) = 1 (in [3])
clock_gettime(CLOCK_MONOTONIC, {548105, 53439342}) = 0
read(3, "Bp=\304;WI\\x\271\26Cy\214\245\330\336*\270\35\3507\225pw\226\316\225\220\322\300\241"..., 8192) = 1448
clock_gettime(CLOCK_MONOTONIC, {548105, 53637911}) = 0
clock_gettime(CLOCK_MONOTONIC, {548105, 53723783}) = 0
Now, the parent process, mc, pid 6558, seems to be receiving data.
If I kill -STOP 6558, I can see the data flow stop.
strace of that pid shows only reading from a pipe, only one character at
a time?
read(10, "+", 1) = 1
read(10, "\316", 1) = 1
read(10, "\222", 1) = 1
read(10, "\253", 1) = 1
read(10, "\216", 1) = 1
read(10, "\317", 1) = 1
read(10, "\316", 1) = 1
I can't see where mc is shoving that data, the UI is not showing any
progress
The destination file shown in lsof shows no progress/size change:
mc 6558 root 8w REG 0,42 1186279729 25828 /mnt/dshelf1/file
So I have no idea where mc is putting that data if it is flowing in
(albeit one character at a time?) and not flowing out according to lsof.
Can you suggest what other data I should gather to help file a that's
actionable?
gargamel:~# mc --version
GNU Midnight Commander 4.8.12
Built with GLib 2.38.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 support for X11 events
With internationalization support
With multiple codepages support
Virtual File Systems: cpiofs, tarfs, sfs, extfs, ext2undelfs, ftpfs, sftpfs, fish
Data types: char: 8; int: 32; long: 32; void *: 32; size_t: 32; off_t: 64;
Thanks,
Marc
--
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems ....
.... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/ | PGP 1024R/763BE901
More information about the mc-devel
mailing list