Comment 2 for bug 1527645

Revision history for this message
Steve Langasek (vorlon) wrote : Re: grub-mkconfig hangs (due to acting on closed handle?)

wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 17818
pipe([3, 4]) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7fe3556d7a10) = 17819
close(4) = 0
read(3,

This is the standard usage of pipe. pipe opens two connected file descriptors, and returns these fds in the array that's the argument to pipe. The process then forks, the parent closes one, the child closes the other, and they talk across this pipe.

Since you are only stracing the grub-mkconfig process, and not following forks ('strace -ff'), this trace doesn't show us what's actually hanging.

grub-mkconfig, btw, is a shell script, so it's probably better to debug it using 'sh -x /usr/sbin/grub-mkconfig' instead.