delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/05/29/23:29:16

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Wed, 29 May 2002 22:28:18 -0500
From: Michael Potter <pottmi AT lidp DOT com>
To: cygwin AT cygwin DOT com
Subject: suspect bug in fork with sockets
Message-ID: <20020529222818.A862322@lidp.com>
Reply-To: pottmi AT lidp DOT com
Mime-Version: 1.0
User-Agent: Mutt/1.3.19i
Organization: Life Insurance Data Processing Incorporated
Phone: +1 630 829 7015

--DocE+STaALJfprDB
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

please find attached a tar file containing a sample program
and the output of that sample program using strace.  The
following is a sample run of that program:

------------------------------------------------------------
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> ipcs

---------- Shared Memory Segments --------
     shmid     key       bytes     nattch    status

---------- Semaphore Arrays --------
     semid     nsems     key

---------- Message Queues --------
     msqid     used-bytes  messages

[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> gcc -oforktest forktest.c -lcygipc
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> ./forktest
in pid = 2992
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> b4 memset3
after memset3
entering NetWorkSocketPort=10210, Socket=5, sinport=57895exiting NetWorkSocketin
 pid = 2460
   2065 [main] forktest 3508 fixup_mmaps_after_fork: base address fails to match
 requested address 0x650000
c:\apps\apwin1\src\forktest\forktest.exe: *** recreate_mmaps_after_fork_failed

[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> ipcs

---------- Shared Memory Segments --------
     shmid     key       bytes     nattch    status
_shm 11392     502       1048576   0

---------- Semaphore Arrays --------
     semid     nsems     key

---------- Message Queues --------
     msqid     used-bytes  messages

[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> ipcrm shm 11392
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> strace -f ./forktest 2>&1 >forktest.strace 2>&1
c:\apps\apwin1\src\forktest\forktest.exe: *** recreate_mmaps_after_fork_failed
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> gtar -cf forktest.tar forktest.c forktest.strace
bash: gtar: command not found
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
-> tar -cf forktest.tar forktest.c forktest.strace
[@TERMSERV]/cygdrive/c/apps/apwin1/src/forktest>
->


[@TERMSERV]/usr/local/lib>
-> ls -l libcygipc.a
-rw-r--r--    1 apwin1   Administ    26912 May 23 13:04 libcygipc.a
[@TERMSERV]/usr/local/lib>
-> cd ../../lib
[@TERMSERV]/usr/lib>
-> ls -l libcygwin.a
-rw-r--r--    1 apwin1   Administ   792112 Feb 25 10:16 libcygwin.a
[@TERMSERV]/usr/lib>
->

[@TERMSERV]/cygdrive/c/apps/cygwin/bin>
-> uname -a
CYGWIN_NT-5.0 TERMSERV 1.3.10(0.51/3/2) 2002-02-25 11:14 i686 unknown
[@TERMSERV]/cygdrive/c/apps/cygwin/bin>
->
------------------------------------------------------------

note: the program does an accept(), so you must telnet to port 10210
to allow the program to continue.

note: i had to gzip the strace file to get it small enough to email.

any help is appreciated.

thank you for providing a great piece of software.

-- 
Michael Potter
pottmi AT lidp DOT com


--DocE+STaALJfprDB
Content-Type: application/x-tar
Content-Disposition: attachment; filename="forktest.tar"
Content-Transfer-Encoding: base64

Zm9ya3Rlc3QuYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEwMDY0NCAA
MDAxMTc0IAAwMDE3NTAgADAwMDAwMDA0MzI3IDA3NDc1MzA3NzAxIDAxMzYyMwAgMAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHBvdHRt
aQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXNlcnMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAwMDAwMDAgADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUg
PGZjbnRsLmg+CiNpbmNsdWRlIDxlcnJuby5oPgojaW5jbHVkZSA8c3lzL2lwYy5oPgojaW5j
bHVkZSA8c3lzL3NobS5oPgoKI2luY2x1ZGUgPHN5cy90eXBlcy5oPgojaW5jbHVkZSA8c3lz
L3NvY2tldC5oPgojaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgojaW5jbHVkZSA8bmV0ZGIuaD4K
I2luY2x1ZGUgPGFycGEvaW5ldC5oPgoKc3RhdGljIGludCBSZWdQcm9jTmV0X3NkOwpzdGF0
aWMgc3RydWN0IHNvY2thZGRyX2luIFNpbjsKc3RhdGljIGNvbnN0IGludCBvbiA9IDE7Cgpp
bnQgU3dpdGNoVG9Qcml2YXRlX3NkKHZvaWQpCnsKICAgaW50IE5ld05ldF9zZDsKICAgdW5z
aWduZWQgbG9uZyBTaXplT2Zzb2NrYWRkcl9pbiA9IHNpemVvZiAoc3RydWN0IHNvY2thZGRy
X2luKTsKCiAgIE5ld05ldF9zZCA9IGFjY2VwdChSZWdQcm9jTmV0X3NkLCAoc3RydWN0IHNv
Y2thZGRyICopJlNpbiwKICAgIChzaXplX3QgKikmU2l6ZU9mc29ja2FkZHJfaW4pOwoKICAg
aWYgKE5ld05ldF9zZCA8IDApCiAgIHsKICAgICAgaW50IFNhdmVFcnJObyA9IGVycm5vOwog
ICAgICBwcmludGYoIkV4aXRpbmcgZHVlIHRvIGVycm9yIGluIGFjY2VwdCAlZCIsIFNhdmVF
cnJObyk7CiAgICAgIGV4aXQoMSk7CiAgIH0KICAgcmV0dXJuKE5ld05ldF9zZCk7Cn0KCnZv
aWQgTmV0V29ya1NvY2tldCh2b2lkKQp7CgogICBpbnQgU2l6ZU9mc29ja2FkZHJfaW4gPSBz
aXplb2YgKHN0cnVjdCBzb2NrYWRkcl9pbik7CiAgIGJ6ZXJvKChjaGFyICopICZTaW4sIHNp
emVvZihTaW4pKTsKICAgU2luLnNpbl9mYW1pbHkgPSBBRl9JTkVUOyAKICAgU2luLnNpbl9h
ZGRyLnNfYWRkciA9IGh0b25sKElOQUREUl9BTlkpIDsKICAgU2luLnNpbl9wb3J0ID0gaHRv
bnMoKHVuc2lnbmVkIHNob3J0KTEwMjEwKTsKCiAgIHByaW50ZigiZW50ZXJpbmcgTmV0V29y
a1NvY2tldCIpOwoKICAgUmVnUHJvY05ldF9zZCA9IHNvY2tldChBRl9JTkVULCBTT0NLX1NU
UkVBTSwgMCk7CiAgIGlmIChSZWdQcm9jTmV0X3NkIDwgMCkKICAgewogICAgICBpbnQgU2F2
ZUVyck5vID0gZXJybm87CiAgICAgIHByaW50ZigiRXhpdGluZyBkdWUgdG8gZXJyb3IgaW4g
c29ja2V0ICVkIiwgU2F2ZUVyck5vKTsKICAgICAgZXhpdCgxKTsKICAgfQogICAKICAgKHZv
aWQpIHNldHNvY2tvcHQoUmVnUHJvY05ldF9zZCwgU09MX1NPQ0tFVCwgU09fUkVVU0VBRERS
LCAmb24sIHNpemVvZihvbikpOwogICAKICAgaWYgKGJpbmQoUmVnUHJvY05ldF9zZCwgKHN0
cnVjdCBzb2NrYWRkciAqKSZTaW4sIFNpemVPZnNvY2thZGRyX2luKSA8IDApCiAgIHsKICAg
ICAgaW50IFNhdmVFcnJObyA9IGVycm5vOwogICAgICBwcmludGYoIkV4aXRpbmcgZHVlIHRv
IGVycm9yIGluIGJpbmQgJWQiLCBTYXZlRXJyTm8pOwogICAgICBleGl0KDEpOwogICB9Cgog
ICBpZiAobGlzdGVuKFJlZ1Byb2NOZXRfc2QsIDEpIDwgMCkKICAgewogICAgICBpbnQgU2F2
ZUVyck5vID0gZXJybm87CiAgICAgIHByaW50ZigiRXhpdGluZyBkdWUgdG8gZXJyb3IgaW4g
bGlzdGVuICVkIiwgU2F2ZUVyck5vKTsKICAgICAgZXhpdCgxKTsKICAgfQogICB7CiAgICAg
IHByaW50ZigiUG9ydD0lZCwgU29ja2V0PSVkLCBzaW5wb3J0PSVkIiwKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgMTAyMTAsIFJlZ1Byb2NOZXRfc2QsIFNpbi5zaW5fcG9ydCk7
CiAgIH0KICAgcHJpbnRmKCJleGl0aW5nIE5ldFdvcmtTb2NrZXQiKTsKICAgcmV0dXJuOwp9
CgoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKewogICBjaGFyICpzaG1wdHIz
OwogICBpbnQgc2htaWQzOwogICBpbnQgU2F2ZUVycm5vOwogICBpbnQgc2Q7CgogICBpZiAo
Zm9yaygpKQogICB7CiAgICAgIHByaW50ZigiaW4gcGlkID0gJWRcbiIsIGdldHBpZCgpKTsK
ICAgICAgZXhpdCgwKTsKICAgfQoKICAgc2htaWQzID0gc2htZ2V0KDUwMiwgMTAyNCoxMDI0
LCAwNjY2fElQQ19DUkVBVHxJUENfRVhDTCk7CgogICBzaG1wdHIzID0gKGNoYXIgKilzaG1h
dChzaG1pZDMsICh2b2lkICopMCwgKGludCkwKTsKICAgcHJpbnRmKCJiNCBtZW1zZXQzXG4i
KTsKICAgbWVtc2V0KHNobXB0cjMsIDAsIDEwMjQqMTAyNCk7CiAgIHByaW50ZigiYWZ0ZXIg
bWVtc2V0M1xuIik7CgogICBOZXRXb3JrU29ja2V0KCk7CgogICBzZCA9IFN3aXRjaFRvUHJp
dmF0ZV9zZCgpOwoKICAgZm9yaygpOwogICBwcmludGYoImluIHBpZCA9ICVkXG4iLCBnZXRw
aWQoKSk7CiAgIGV4aXQoMCk7Cn0KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZm9ya3Rl
c3Quc3RyYWNlLmd6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEwMDY0NCAAMDAxMTc0
IAAwMDE3NTAgADAwMDAwMDMyNzU0IDA3NDc1MzEwNDUzIDAxNTMwNAAgMAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1c3RhcgAwMHBvdHRtaQAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAdXNlcnMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw
MDAwMDAgADAwMDAwMCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAfiwgIK5H1PAADZm9ya3Rlc3Quc3RyYWNlAOw9a3PiSJLf
O6L/gy5uNq57zm1UpTc+Jpanmx0ePoTdO7dsKDDINtO8DtGv/bC//bKyJChsSlIJem4/9Oy2
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
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
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
QnoQYWDmsqadd0qqZ9o=


--DocE+STaALJfprDB
Content-Type: text/plain; charset=us-ascii

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/
--DocE+STaALJfprDB--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019