expac hangs on a 'select' operation #4

Closed
X-dark opened this Issue Sep 5, 2012 · 3 comments

Comments

Projects
None yet
2 participants
@X-dark

X-dark commented Sep 5, 2012

I haven't been able to reproduce this on other computer but on one of them whenever I run expac (with any arguments) it never returns.

With strace, I see the process keeps doing a 'select' operation which timeout each time:

[...]
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5322, si_status=0, si_utime=0, si_stime=0} ---
close(7)                                = 0
close(9)                                = 0
select(9, [6 8], [], NULL, {1, 0})      = 1 (in [8], left {0, 991841})
select(9, [8], [], NULL, {0, 0})        = 1 (in [8], left {0, 0})
read(8, "tru::1:1338890229:0:3:1:5\n", 1024) = 26
select(9, [6 8], [], NULL, {1, 0})      = 2 (in [6 8], left {0, 999996})
select(7, [6], [], NULL, {0, 0})        = 1 (in [6], left {0, 0})
read(6, "", 1024)                       = 0
close(6)                                = 0
select(9, [8], [], NULL, {0, 0})        = 1 (in [8], left {0, 0})
read(8, "", 1024)                       = 0
close(8)                                = 0
close(5)                                = 0
munmap(0x7f5a538f9000, 4096)            = 0
close(4)                                = 0
munmap(0x7f5a538f8000, 4096)            = 0
pipe([4, 5])                            = 0
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f5a538fc9d0) = 5324
wait4(5324, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 5324
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5324, si_status=0, si_utime=0, si_stime=0} ---
close(5)                                = 0
read(4, "gpg (GnuPG) 2.0.19\nlibgcrypt 1.5"..., 79) = 79
close(4)                                = 0
pipe([4, 5])                            = 0
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
readlink("/proc/self/fd/1", "/dev/pts/1", 63) = 10
stat("/dev/pts/1", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
pipe([6, 7])                            = 0
fcntl(6, F_SETFD, FD_CLOEXEC)           = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f5a538fc9d0) = 5326
wait4(5326, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 5326
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5326, si_status=0, si_utime=0, si_stime=0} ---
close(5)                                = 0
close(7)                                = 0
select(7, [4 6], [], NULL, {1, 0})      = 1 (in [6], left {0, 991749})
select(7, [6], [], NULL, {0, 0})        = 1 (in [6], left {0, 0})
read(6, "tru::1:1338890229:0:3:1:5\n", 1024) = 26
select(7, [4 6], [], NULL, {1, 0})      = 2 (in [4 6], left {0, 999996})
select(5, [4], [], NULL, {0, 0})        = 1 (in [4], left {0, 0})
read(4, "", 1024)                       = 0
close(4)                                = 0
select(7, [6], [], NULL, {0, 0})        = 1 (in [6], left {0, 0})
read(6, "", 1024)                       = 0
close(6)                                = 0
pipe([4, 5])                            = 0
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f5a538fc9d0) = 5328
wait4(5328, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 5328
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5328, si_status=0, si_utime=0, si_stime=0} ---
close(5)                                = 0
read(4, "gpg (GnuPG) 2.0.19\nlibgcrypt 1.5"..., 79) = 79
close(4)                                = 0
pipe([4, 5])                            = 0
fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
readlink("/proc/self/fd/1", "/dev/pts/1", 63) = 10
stat("/dev/pts/1", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
pipe([6, 7])                            = 0
fcntl(6, F_SETFD, FD_CLOEXEC)           = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f5a538fc9d0) = 5330
wait4(5330, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 5330
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=5330, si_status=0, si_utime=0, si_stime=0} ---
close(5)                                = 0
close(7)                                = 0
select(7, [4 6], [], NULL, {1, 0})      = 0 (Timeout)
select(7, [4 6], [], NULL, {1, 0})      = 0 (Timeout)
select(7, [4 6], [], NULL, {1, 0})      = 0 (Timeout)
select(7, [4 6], [], NULL, {1, 0})      = 0 (Timeout)
select(7, [4 6], [], NULL, {1, 0})      = 0 (Timeout)
select(7, [4 6], [], NULL, {1, 0})      = 0 (Timeout)
[...]

I'm running an uptodate Arch x86_64.

@falconindy

This comment has been minimized.

Show comment
Hide comment
@falconindy

falconindy Sep 5, 2012

Owner

The 'select' is coming from gnupg, which might indicate a problem with your keyring. expac sets the pacman.conf equivalent of "SigLevel = DatabaseOptional PackageNever". I suggest looking to see if any of your repos are legitimately signed.

Strongly suspect this isn't anything that needs fixing in expac.

Owner

falconindy commented Sep 5, 2012

The 'select' is coming from gnupg, which might indicate a problem with your keyring. expac sets the pacman.conf equivalent of "SigLevel = DatabaseOptional PackageNever". I suggest looking to see if any of your repos are legitimately signed.

Strongly suspect this isn't anything that needs fixing in expac.

@X-dark

This comment has been minimized.

Show comment
Hide comment
@X-dark

X-dark Sep 5, 2012

Thanks for the info. I am investigating it and will report back.

X-dark commented Sep 5, 2012

Thanks for the info. I am investigating it and will report back.

@X-dark

This comment has been minimized.

Show comment
Hide comment
@X-dark

X-dark Sep 5, 2012

OK. It is happening whenever I have a repo with signed database enabled. If I disable database signature verification on [xyne] repo (only repo with signed db I use) everything works fine.

X-dark commented Sep 5, 2012

OK. It is happening whenever I have a repo with signed database enabled. If I disable database signature verification on [xyne] repo (only repo with signed db I use) everything works fine.

@falconindy falconindy closed this Dec 12, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment