From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23894 invoked by alias); 5 Aug 2015 00:06:07 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 35983 Received: (qmail 22430 invoked from network); 5 Aug 2015 00:06:06 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=dsiyzL3l/0G47ztbk7SRKwjd0SNcMST1Yc8PSrwDhm4=; b=Asm1JYPRKzsrUwGT+IUv4gf3EN63tgHWjszZNWM4Ae72eGm2msFTmBZjQYRMlmoKL7 UN1dz2ufP/+dWjxujTY8/crNFN9bewesHN+KAPRA+z4ZN4C84nHj2hg0zI0nhbfZ8pIb to1svugpsAXUKgB7sRDKYy3BlY/41C7fFilIJ6rG4Vpf/JAurZYZE50eNSlQPcdfOTlJ DvUYIl/JkzckdStTfuSjZrvFgKHEHvuA7WFJbk4WAzxTTIrGo1Y+s3e0avLoiog+HFiw GQE1z0ZBkSBxHrzSYJKnLs/wOypb7ESxTIaqnSttdSwbsx4M956CzBrq14pq+baqfF7I ELOw== X-Received: by 10.60.46.200 with SMTP id x8mr5802897oem.73.1438733163477; Tue, 04 Aug 2015 17:06:03 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <150803085228.ZM24837@torch.brasslantern.com> <150803135818.ZM24977@torch.brasslantern.com> From: Mathias Fredriksson Date: Wed, 5 Aug 2015 03:05:24 +0300 Message-ID: Subject: Re: Deadlock when receiving kill-signal from child process To: zsh-workers@zsh.org Content-Type: text/plain; charset=UTF-8 I can't seem to produce wanted gdb output of the frozen state. If i run through gdb with "continue&", when it finally freezes, gdb will only tell me that it is still running and trying to perform operations gives "Target is executing.". My gdb-foo is way too low to deal with this (unless someone would like to give me assistance in debugging it further). Since gdb was not much help, I have modified the code slightly in hopes of others being able to reproduce. With this modification I can produce a deadlock / freeze on every run. -- child() { sleep 0.00001 kill -USR1 $$ sleep 0.0001 kill -USR1 $$ } TRAPUSR1() { sleep 0.000001 print -n "." } for i in {1..10}; do child &! done sleep 0.0000001 sleep 0.000001 sleep 0.00001 sleep 0.0001 sleep 0.001