Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com From: Richard DOT Hirst AT net-tel DOT co DOT uk Original-Encoded-Information-Types: IA5-Text, (2)(6)(1)(12)(0), (1)(2)(840)(113556)(3)(10)(1) Date: Thu, 25 Mar 1999 14:02:53 +0000 Message-Id: <"SLOE:0092-990325140215-0004*/G=Richard/S=Hirst/O=NET-TEL Computer Systems Ltd/PRMD=NET-TEL/ADMD=GOLD 400/C=GB/"@MHS> To: cygwin AT sourceware DOT cygnus DOT com Subject: B20.1: Returning from pause() before signal handler runs? MIME-Version: 1.0 (Generated by NET-TEL X.400 Rfcgate Version 5.2.0) Content-Type: Multipart/Mixed; boundary="ESLOE:0092-990325140215-0004s/G=Richard.b0ndr1y.nested_0" --ESLOE:0092-990325140215-0004s/G=Richard.b0ndr1y.nested_0 Content-Type: text/plain;charset=us-ascii Content-Transfer-Encoding: 7bit Hi, I am running "sendmail -q1" under B20.1 on NT4.0 SP3. This should poll a queue directory once a minute, but I find that after a few polls it goes to sleep. I have provided a small test program which shows the problem. The parent installs ALRM and CHLD signal handlers, forks a child, requests an alarm tick., and calls pause(). The child exits. Sometimes the child exits before the parent calls pause(), sometimes not. The signal handlers increment counts each time they run. The parent notes these counts before calling pause, and again after returning from pause(). Sometimes the parent finds that the counts havn't changed; it does a printf() and checks the counts again - now they have changed. It looks to me as though the parent is returning from pause() before the signal handler has been run. I can provoke the problem within a few cycles if I run a couple of copies of the program and then start up a few other programs (DevStudio, MSDOS boxes, etc). This is on a PII-233 with 64MB, NT4.0 SP3. If anyone could reproduce the problem, and say whether it looks like a cygwin bug or not, I'd appreciate it. Thanks, Richar --ESLOE:0092-990325140215-0004s/G=Richard.b0ndr1y.nested_0 Content-Type: application/x-ftbp.1.2.840.1.113694.2.2.1.1 Content-Disposition: attachment;filename="bug.c"; modification-date=Thu, 25 Mar 1999 14:02:15 +0000;size=2683 Content-Transfer-Encoding: base64 I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDx1bmlzdGQuaD4KI2luY2x1ZGUgPGVycm5vLmg+ CiNpbmNsdWRlIDxzaWduYWwuaD4KI2luY2x1ZGUgPHN5cy90eXBlcy5oPgojaW5jbHVkZSA8c3lz L3dhaXQuaD4KCgojZGVmaW5lIFRSVUUJMQojZGVmaW5lIEZBTFNFCTAKdHlwZWRlZiB2b2lkICAg ICAgICAgICAgICAoKnNpZ2Z1bmNfdCkoKTsKCgppbnQgUXVldWVJbnR2bCA9IDQ7CnZvbGF0aWxl IGludCBEb1F1ZXVlUnVuOwp2b2xhdGlsZSBpbnQgdGlja19jbnQgPSAwOwp2b2xhdGlsZSBpbnQg Y2hpbGRfY250ID0gMDsKCnNpZ2Z1bmNfdApzZXRzaWduYWwoc2lnLCBoYW5kbGVyKQoJaW50IHNp ZzsKCXNpZ2Z1bmNfdCBoYW5kbGVyOwp7CglyZXR1cm4gc2lnbmFsKHNpZywgaGFuZGxlcik7Cn0K CgppbnQKYmxvY2tzaWduYWwoc2lnKQoJaW50IHNpZzsKewoJc2lnc2V0X3Qgc3NldCwgb3NldDsK CglzaWdlbXB0eXNldCgmc3NldCk7CglzaWdhZGRzZXQoJnNzZXQsIHNpZyk7CglpZiAoc2lncHJv Y21hc2soU0lHX0JMT0NLLCAmc3NldCwgJm9zZXQpIDwgMCkKCXsKCQlwZXJyb3IgKCJzaWdwcm9j bWFzayIpOwoJCWV4aXQgKDEpOwoJfQoJZWxzZQoJCXJldHVybiBzaWdpc21lbWJlcigmb3NldCwg c2lnKTsKfQoKCmludApyZWxlYXNlc2lnbmFsKHNpZykKCWludCBzaWc7CnsKCXNpZ3NldF90IHNz ZXQsIG9zZXQ7CgoJc2lnZW1wdHlzZXQoJnNzZXQpOwoJc2lnYWRkc2V0KCZzc2V0LCBzaWcpOwoJ aWYgKHNpZ3Byb2NtYXNrKFNJR19VTkJMT0NLLCAmc3NldCwgJm9zZXQpIDwgMCkKCXsKCQlwZXJy b3IgKCJzaWdwcm9jbWFzayIpOwoJCWV4aXQgKDEpOwoJfQoJZWxzZQoJCXJldHVybiBzaWdpc21l bWJlcigmb3NldCwgc2lnKTsKfQoKdm9pZAp0aWNrKGludCBzaWcpCnsKCXRpY2tfY250Kys7CglE b1F1ZXVlUnVuID0gVFJVRTsKfQoKCnZvaWQKc2V0ZXZlbnQoaW50dmwpCgl0aW1lX3QgaW50dmw7 CnsKCWludCB3YXNibG9ja2VkOwoKCXdhc2Jsb2NrZWQgPSBibG9ja3NpZ25hbChTSUdBTFJNKTsK CglzZXRzaWduYWwoU0lHQUxSTSwgdGljayk7Cgkodm9pZCkgYWxhcm0oKHVuc2lnbmVkKSBpbnR2 bCk7CglpZiAod2FzYmxvY2tlZCA9PSAwKQoJCSh2b2lkKSByZWxlYXNlc2lnbmFsKFNJR0FMUk0p OwoJcHJpbnRmICgiUmVxdWVzdGVkIHRpY2tcbiIpOwp9CgoKdm9pZApyZWFwY2hpbGQoaW50IHNp ZykKewoJcGlkX3QgcGlkOwoJaW50IHN0YXR1czsKCgljaGlsZF9jbnQrKzsKCXBpZCA9IHdhaXRw aWQoLTEsICZzdGF0dXMsIFdOT0hBTkcpOwoJaWYgKHBpZCA8PSAwKQoJewoJCXByaW50Zigid2Fp dHBpZCBmYWlsZWQhXG4iKTsKCQlleGl0ICgxKTsKCX0KfQoKCmludApydW5xdWV1ZSh2b2lkKQp7 CglwaWRfdCBwaWQ7CgoJcHJpbnRmICgiU2V0dGluZyBEb1F1ZXVlUnVuIEZBTFNFXG4iKTsKCURv UXVldWVSdW4gPSBGQUxTRTsKCglibG9ja3NpZ25hbChTSUdDSExEKTsKCSh2b2lkKSBzZXRzaWdu YWwoU0lHQ0hMRCwgcmVhcGNoaWxkKTsKCglwaWQgPSBmb3JrKCk7CglpZiAocGlkID09IC0xKQoJ ewoJCXBlcnJvciAoImZvcmsiKTsKCQlleGl0ICgxKTsKCX0KCWlmIChwaWQgIT0gMCkKCXsKCQkv KiBwYXJlbnQgLS0gcGljayB1cCBpbnRlcm1lZGlhdGUgem9tYmllICovCgkJcHJpbnRmKCJDaGls ZCAlZFxuIiwgcGlkKTsKCQlyZWxlYXNlc2lnbmFsKFNJR0NITEQpOwoJCXNldGV2ZW50KFF1ZXVl SW50dmwpOwoJCXJldHVybiBUUlVFOwoJfQoJLyogQ2hpbGQgZXhpdHMgKi8KCWV4aXQgKDApOwp9 CgoKaW50Cm1haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikKewoJaW50IGNudCA9IDA7CglpbnQg bGFzdF90aWNrX2NudCwgbGFzdF9jaGlsZF9jbnQsIG5ld190aWNrX2NudCwgbmV3X2NoaWxkX2Nu dDsKCglydW5xdWV1ZSgpOwoJZm9yICg7OykKCXsKCQlwcmludGYgKCJQYXVzZSAlZFxuIiwgY250 KyspOwoJCWxhc3RfdGlja19jbnQgPSB0aWNrX2NudDsKCQlsYXN0X2NoaWxkX2NudCA9IGNoaWxk X2NudDsKCQlwYXVzZSgpOwoJCW5ld190aWNrX2NudCA9IHRpY2tfY250OwoJCW5ld19jaGlsZF9j bnQgPSBjaGlsZF9jbnQ7CgkJaWYgKGxhc3RfdGlja19jbnQgPT0gbmV3X3RpY2tfY250ICYmIGxh c3RfY2hpbGRfY250ID09IG5ld19jaGlsZF9jbnQpCgkJewoJCQlpbnQgbG9vcCA9IDA7CgkJCXBy aW50ZiAoIkhtbSwgc2VlbXMgd2UgY2FtZSBvZmYgcGF1c2UgZm9yIG5vIHJlYXNvbi5cbiIpOwoJ CQlwcmludGYgKCJMb29waW5nIHdhaXRpbmcgZm9yIHNpZyBoYW5kZXIgdG8gZmluaXNoXG4iKTsK CQkJd2hpbGUgKGxhc3RfdGlja19jbnQgPT0gdGlja19jbnQgJiYgbGFzdF9jaGlsZF9jbnQgPT0g Y2hpbGRfY250KQoJCQkJbG9vcCsrOwoJCQlwcmludGYgKCJIYW5kbGVyIHJhbiwgbG9vcCAlZCAo dGljayAlZCAtPiAlZCwgY2hpbGQgJWQgLT4gJWQpXG4iLAoJCQkJbG9vcCwgbGFzdF90aWNrX2Nu dCwgdGlja19jbnQsIGxhc3RfY2hpbGRfY250LCBjaGlsZF9jbnQpOwoJCX0KCgkJaWYgKERvUXVl dWVSdW4pCgkJCSh2b2lkKSBydW5xdWV1ZSgpOwoJCWVsc2UKCQkJcHJpbnRmICgiRG9RdWV1ZVJ1 biBGQUxTRSAodGljayAlZCAtPiAlZCwgY2hpbGQgJWQgLT4gJWQpXG4iLAoJCQkJbGFzdF90aWNr X2NudCwgdGlja19jbnQsIGxhc3RfY2hpbGRfY250LCBjaGlsZF9jbnQpOwoJfQoJcmV0dXJuIDA7 Cn0KCg== --ESLOE:0092-990325140215-0004s/G=Richard.b0ndr1y.nested_0 Content-Type: text/plain;charset=us-ascii Content-Transfer-Encoding: 7bit --ESLOE:0092-990325140215-0004s/G=Richard.b0ndr1y.nested_0 Content-Type: text/plain; charset=us-ascii -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com --ESLOE:0092-990325140215-0004s/G=Richard.b0ndr1y.nested_0--