X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=1.6 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org MIME-Version: 1.0 Date: Mon, 12 Jul 2010 11:36:04 -0500 Message-ID: Subject: Sending SIGUSR1 to thread in nanosleep causes segfault From: James Cotton To: cygwin AT cygwin DOT com Content-Type: multipart/mixed; boundary=000e0cd5198646f47e048b3359e0 Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com --000e0cd5198646f47e048b3359e0 Content-Type: text/plain; charset=ISO-8859-1 Hello, I've been trying to get the FreeRTOS Posix simulator to run on Cygwin and have run into a few bugs in the signal handling/pthread libraries and have isolated test cases Essentially sending a SIGUSR1 to a pthread causes a segfault if that thread is in sleep/nanosleep/select. This behavior continues if you comment out the printing behavior. I believe at least nanosleep is meant to return when it receives a signal so this seems like a bug. Thanks, James --000e0cd5198646f47e048b3359e0 Content-Type: application/octet-stream; name="test_case_1_sleep.c" Content-Disposition: attachment; filename="test_case_1_sleep.c" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gbjjdcb90 LyoqCiAqIHNtYWxsIHRlc3QgcHJvZ3JhbSB3aGV0aGVyIHNpZ25hbHMgYmV0 d2VlbiB0aHJlYWRzIHdvcmsgYXMgdGhleSBzaG91bGQKICovCgojaW5jbHVk ZSA8dW5pc3RkLmg+CiNpbmNsdWRlIDxwdGhyZWFkLmg+CiNpbmNsdWRlIDxz aWduYWwuaD4KCnZvaWQgc2lnaGFuZGxlcihpbnQgc2lnKSB7Cgl3cml0ZSgy LCIuIiwxKTsKCXJldHVybjsKfQoKdm9pZCogdGhyZWFkc3RhcnQodm9pZCog YXJnKSB7CgoJd2hpbGUgKDEpIHsKCQlzbGVlcCgxKTsKCX0KfQoKaW50IG1h aW4oY2hhcioqIGFyZ2MsIGludCBhcmd2KSB7CgoJcHRocmVhZF90IHRlc3R0 aHJlYWQxOwkKCXN0cnVjdCBzaWdhY3Rpb24gYWN0aW9uOwoKCWFjdGlvbi5z YV9oYW5kbGVyPXNpZ2hhbmRsZXI7CglhY3Rpb24uc2FfZmxhZ3M9MDsKCXNp Z2ZpbGxzZXQoICZhY3Rpb24uc2FfbWFzayApOwoJc2lnYWN0aW9uKFNJR1VT UjEsJmFjdGlvbixOVUxMKTsKCglwdGhyZWFkX2NyZWF0ZSgmdGVzdHRocmVh ZDEsTlVMTCx0aHJlYWRzdGFydCxOVUxMKTsKCXdoaWxlICgxKSB7CgkJcHRo cmVhZF9raWxsKHRlc3R0aHJlYWQxLFNJR1VTUjEpOwoJfQp9Cg== --000e0cd5198646f47e048b3359e0 Content-Type: application/octet-stream; name="test_case_2_nanosleep.c" Content-Disposition: attachment; filename="test_case_2_nanosleep.c" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gbjjde681 LyoqCiAqIHNtYWxsIHRlc3QgcHJvZ3JhbSB3aGV0aGVyIHNpZ25hbHMgYmV0 d2VlbiB0aHJlYWRzIHdvcmsgYXMgdGhleSBzaG91bGQKICovCgojaW5jbHVk ZSA8dGltZS5oPgojaW5jbHVkZSA8cHRocmVhZC5oPgojaW5jbHVkZSA8c2ln bmFsLmg+Cgp2b2lkIHNpZ2hhbmRsZXIoaW50IHNpZykgewoJd3JpdGUoMiwi LiIsMSk7CglyZXR1cm47Cn0KCnZvaWQqIHRocmVhZHN0YXJ0KHZvaWQqIGFy ZykgewpzdHJ1Y3QgdGltZXNwZWMgc2xlZXB0aW1lOwoKCXdoaWxlICgxKSB7 CgkJc2xlZXB0aW1lLnR2X3NlYz0xOwoJCXNsZWVwdGltZS50dl9uc2VjPTA7 CgkJbmFub3NsZWVwKCZzbGVlcHRpbWUsTlVMTCk7Cgl9Cn0KCmludCBtYWlu KGNoYXIqKiBhcmdjLCBpbnQgYXJndikgewoKCXB0aHJlYWRfdCB0ZXN0dGhy ZWFkMTsJCglzdHJ1Y3Qgc2lnYWN0aW9uIGFjdGlvbjsKCglhY3Rpb24uc2Ff aGFuZGxlcj1zaWdoYW5kbGVyOwoJYWN0aW9uLnNhX2ZsYWdzPTA7CglzaWdm aWxsc2V0KCAmYWN0aW9uLnNhX21hc2sgKTsKCXNpZ2FjdGlvbihTSUdVU1Ix LCZhY3Rpb24sTlVMTCk7CgoJcHRocmVhZF9jcmVhdGUoJnRlc3R0aHJlYWQx LE5VTEwsdGhyZWFkc3RhcnQsTlVMTCk7Cgl3aGlsZSAoMSkgewoJCXB0aHJl YWRfa2lsbCh0ZXN0dGhyZWFkMSxTSUdVU1IxKTsKCX0KfQo= --000e0cd5198646f47e048b3359e0 Content-Type: application/octet-stream; name="test_case_3_select.c" Content-Disposition: attachment; filename="test_case_3_select.c" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gbjjdg2q2 LyoqCiAqIHNtYWxsIHRlc3QgcHJvZ3JhbSB3aGV0aGVyIHNpZ25hbHMgYmV0 d2VlbiB0aHJlYWRzIHdvcmsgYXMgdGhleSBzaG91bGQKICovCgojaW5jbHVk ZSA8c3lzL3RpbWUuaD4KI2luY2x1ZGUgPHN5cy90eXBlcy5oPgojaW5jbHVk ZSA8dW5pc3RkLmg+CiNpbmNsdWRlIDxwdGhyZWFkLmg+CiNpbmNsdWRlIDxz aWduYWwuaD4KCnZvaWQgc2lnaGFuZGxlcihpbnQgc2lnKSB7Cgl3cml0ZSgy LCIuIiwxKTsKCXJldHVybjsKfQoKdm9pZCogdGhyZWFkc3RhcnQodm9pZCog YXJnKSB7CnN0cnVjdCB0aW1ldmFsIHNsZWVwdGltZTsKCgl3aGlsZSAoMSkg ewoJCXNsZWVwdGltZS50dl9zZWM9MTsKCQlzbGVlcHRpbWUudHZfdXNlYz0w OwoJCXNlbGVjdCgwLE5VTEwsTlVMTCxOVUxMLCZzbGVlcHRpbWUpOwoJfQp9 CgppbnQgbWFpbihjaGFyKiogYXJnYywgaW50IGFyZ3YpIHsKCglwdGhyZWFk X3QgdGVzdHRocmVhZDE7CQoJc3RydWN0IHNpZ2FjdGlvbiBhY3Rpb247CgoJ YWN0aW9uLnNhX2hhbmRsZXI9c2lnaGFuZGxlcjsKCWFjdGlvbi5zYV9mbGFn cz0wOwoJc2lnZmlsbHNldCggJmFjdGlvbi5zYV9tYXNrICk7CglzaWdhY3Rp b24oU0lHVVNSMSwmYWN0aW9uLE5VTEwpOwoKCXB0aHJlYWRfY3JlYXRlKCZ0 ZXN0dGhyZWFkMSxOVUxMLHRocmVhZHN0YXJ0LE5VTEwpOwoJd2hpbGUgKDEp IHsKCQlwdGhyZWFkX2tpbGwodGVzdHRocmVhZDEsU0lHVVNSMSk7Cgl9Cn0K --000e0cd5198646f47e048b3359e0 Content-Type: text/plain; charset=us-ascii -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple --000e0cd5198646f47e048b3359e0--