Bug#399904: gnupg: --list-keys hangs at ctrl-C

2013-07-11 Thread NIIBE Yutaka
This is follow up to the bug #399904 in Debian.  It is now assigned to
libc6, but I think that this would be a bug of GnuPG 1.4.x.

The call sequence in question is:

   g10/signal.c:got_fatal_signal
- util/dotlock.c:dotlock_remove_lockfiles
  - util/dotlock.c:dotlock_destroy
- free

Here, free is not a one of async-signal-safe functions (see: signal(7) ).
When the signal handler is called interrupting malloc or related,
hang might occur.
-- 


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/1373532232.3226.6.ca...@cfw2.gniibe.org



Bug#399904: gnupg: --list-keys hangs at ctrl-C

2013-07-11 Thread Werner Koch
On Thu, 11 Jul 2013 10:43, gni...@fsij.org said:

 Here, free is not a one of async-signal-safe functions (see: signal(7) ).
 When the signal handler is called interrupting malloc or related,
 hang might occur.

Argh.  A fix for that would be a function which sets a flag in the
dotlock module to skip all async functions.  We can't do it directly
because the cleanup is dones via atexit.


Shalom-Salam,

   Werner

-- 
Die Gedanken sind frei.  Ausnahmen regelt ein Bundesgesetz.


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87li5dtnty@vigenere.g10code.de



Bug#399904: gnupg: --list-keys hangs at ctrl-C

2012-12-09 Thread Vincent Lefevre
found 399904 2.13-37
thanks

On 2006-11-23 09:39:23 +0100, Werner Koch wrote:
 I was able to duplicate this after some tries.  strace shows that it
 hangs in
 
 futex(0xb7ea9880, FUTEX_WAIT, 2, NULL)  = -1 EINTR (Interrupted system call)

I can also reproduce this bug, with the same example.
The strace ends with:

[...]
21935 write(1, sub   4096R/F4958D46 2012-02-10\n, 32) = 32
21935 write(1, \n, 1) = 1
21935 getrusage(RUSAGE_SELF, {ru_utime={0, 768048}, ru_stime={0, 40002}, ...}) 
= 0
21935 times({tms_utime=76, tms_stime=4, tms_cutime=0, tms_cstime=0}) = 
1828252106
21935 lseek(6, 0, SEEK_SET) = 0
21935 lseek(6, 2153824, SEEK_SET)   = 2153824
21935 read(6, 
\231\1\242\4F!9\1\21\4\0\226\225\217\307\\BL\266+\37\270\34\0-Z\245\374\371\3373...,
 8192) = 8192
21935 read(6, 
f\304B\17L\266B\277\311\1\231\210F\4\20\21\2\0\6\5\2Fq\204\374\0\n\t\0205\326\254...,
 8192) = 8192
21935 --- SIGINT (Interrupt) @ 0 (0) ---
21935 munmap(0x7f5fe36c1000, 32768) = 0
21935 write(2, \n, 1) = 1
21935 write(2, gpg, 3)= 3
21935 write(2, : , 2) = 2
21935 write(2, Interrupt, 9)  = 9
21935 write(2,  caught ... exiting\n, 20) = 20
21935 rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x7f5fe24c34f0}, NULL, 8) 
= 0
21935 unlink(/home/vinc17/.gnupg/.#lk0x124feb0.xvii.21935) = 0
21935 futex(0x7f5fe2816e60, FUTEX_WAIT_PRIVATE, 2, NULL) = ? ERESTARTSYS (To be 
restarted)
21935 --- SIGQUIT (Quit) @ 0 (0) ---
21935 tgkill(21935, 21935, SIGQUIT) = 0
[...]

My machine has:
gnupg 1.4.12-6
libc6 2.13-37
Linux xvii 3.5-trunk-amd64 #1 SMP Debian 3.5.5-1~experimental.1 x86_64 GNU/Linux

-- 
Vincent Lefèvre vinc...@vinc17.net - Web: http://www.vinc17.net/
100% accessible validated (X)HTML - Blog: http://www.vinc17.net/blog/
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)


--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20121209173943.ga22...@xvii.vinc17.org



Processed: Re: Bug#399904: gnupg: --list-keys hangs at ctrl-C

2012-12-09 Thread Debian Bug Tracking System
Processing commands for cont...@bugs.debian.org:

 found 399904 2.13-37
Bug #399904 [libc6] gnupg: --list-keys hangs at ctrl-C
Marked as found in versions eglibc/2.13-37.
 thanks
Stopping processing here.

Please contact me if you need assistance.
-- 
399904: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=399904
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems


--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/handler.s.c.135507478518855.transcr...@bugs.debian.org