Greetings!  Trying to isolate this as you suggest.  On first attempt,
copying the exact same strings and calls into a main() function
succeeds.  I am near stumped, and can only guess that the addresses
returned by malloc on _init of the file_actions and attr structures is
triggering something.  Suggestions welcome.

Take care,

Camm Maguire <c...@maguirefamily.org> writes:

> Greetings!  posix_spawnp is returning 10, or ECHILD, on the following
> call.  At least on my first reading (:-)), ECHILD is not one of the
> documented errors for fork, vfork, or clone referenced by the Linux
> manpage for posix_spawnp.  Suggestions?
>
> Take care,
>
> =============================================================================
>
>   massert(!posix_spawn_file_actions_init(&file_actions));
>   massert(!posix_spawnattr_init(&attr));
>
>   printf("spawn 2 %s\n",*p1);
>   for (pp=p1;pp<pe && *pp;pp++)
>     printf("spawn 2a %s\n",*pp);
>   for (pp=(void *)environ;*pp;pp++)
>     printf("spawn 2e %s\n",*pp);
>   
>   s=posix_spawnp(&pid, *p1, &file_actions, &attr,  (void *)p1, environ);
>   printf("spawn %d\n",s);fflush(stdout);
>
> =============================================================================
> spawn 2 C:\cygwin64\bin\gcc.exe
> spawn 2a C:\cygwin64\bin\gcc.exe
> spawn 2a -c
> spawn 2a -g
> spawn 2a -fsigned-char
> spawn 2a -pipe
> spawn 2a -fcommon
> spawn 2a -fno-builtin-malloc
> spawn 2a -fno-builtin-free
> spawn 2a -fno-PIE
> spawn 2a -fno-pie
> spawn 2a -fno-PIC
> spawn 2a -fno-pic
> spawn 2a -std=gnu17
> spawn 2a -Wall
> spawn 2a -Wno-empty-body
> spawn 2a -Wno-unused-but-set-variable
> spawn 2a -D_FILE_OFFSET_BITS=64
> spawn 2a -D_TIME_BITS=64
> spawn 2a -fno-zero-initialized-in-bss
> spawn 2a -mms-bitfields
> spawn 2a -I/usr/include/tirpc
> spawn 2a -I/cygdrive/c/Users/cammm/32/gclm/gcl/gcl/unixport/../h
> spawn 2a -O2
> spawn 2a -c
> spawn 2a /cygdrive/c/Users/cammm/AppData/Local/Temp/gazonk_942_0.c
> spawn 2a -o
> spawn 2a /cygdrive/c/Users/cammm/AppData/Local/Temp/gazonk_942_0.o
> spawn 2e ProgramFiles(x86)=C:\Program Files (x86)
> spawn 2e CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
> spawn 2e !C:=c:\cygwin64\bin
> spawn 2e SHELL=C:/Users/Camm 
> Maguire/Downloads/emacs-25.2-x86_64/libexec/emacs/25.2/x86_64-w64-mingw32/cmdproxy.exe
> spawn 2e NUMBER_OF_PROCESSORS=2
> spawn 2e FPS_BROWSER_USER_PROFILE_STRING=Default
> spawn 2e PROCESSOR_LEVEL=6
> spawn 2e USERDOMAIN_ROAMINGPROFILE=DESKTOP-6UF6CJJ
> spawn 2e HOSTNAME=DESKTOP-6UF6CJJ
> spawn 2e PROGRAMFILES=C:\Program Files
> spawn 2e TERMCAP=emacs:co#123:tc=unknown:
> spawn 2e PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
> spawn 2e INSIDE_EMACS=25.2.1,comint
> spawn 2e OS=Windows_NT
> spawn 2e HOMEDRIVE=C:
> spawn 2e USERDOMAIN=DESKTOP-6UF6CJJ
> spawn 2e PWD=/cygdrive/c/Users/cammm/32/gclm/gcl/gcl/unixport
> spawn 2e USERPROFILE=C:\Users\cammm
> spawn 2e PRINTER=Microsoft Print to PDF
> spawn 2e TZ=America/Los_Angeles
> spawn 2e ALLUSERSPROFILE=C:\ProgramData
> spawn 2e 
> ORIGINAL_PATH=/usr/bin:/cygdrive/c/Windows/system32:/cygdrive/c/Windows:/cygdrive/c/Windows/System32/Wbem:/cygdrive/c/Windows/System32/WindowsPowerShell/v1.0:/cygdrive/c/Windows/System32/OpenSSH:/cygdrive/c/Program
>  Files/Git/cmd:/cygdrive/c/Users/cammm/AppData/Local/Microsoft/WindowsApps
> spawn 2e CommonProgramW6432=C:\Program Files\Common Files
> spawn 2e HOME=/cygdrive/c/Users/cammm/AppData/Roaming
> spawn 2e USERNAME=cammm
> spawn 2e LANG=ENU
> spawn 2e OneDrive=C:\Users\cammm\OneDrive
> spawn 2e COMSPEC=C:\Windows\system32\cmd.exe
> spawn 2e TMPDIR=/cygdrive/c/Users/cammm/AppData/Local/Temp
> spawn 2e APPDATA=C:\Users\cammm\AppData\Roaming
> spawn 2e SYSTEMROOT=C:\Windows
> spawn 2e LOCALAPPDATA=C:\Users\cammm\AppData\Local
> spawn 2e PROMPT=$P$G
> spawn 2e COMPUTERNAME=DESKTOP-6UF6CJJ
> spawn 2e INFOPATH=/usr/local/info:/usr/share/info:/usr/info
> spawn 2e TERM=xterm-256color
> spawn 2e LOGONSERVER=\\DESKTOP-6UF6CJJ
> spawn 2e USER=cammm
> spawn 2e PSModulePath=C:\Program 
> Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules
> spawn 2e TEMP=/tmp
> spawn 2e DISPLAY=w32
> spawn 2e SHLVL=1
> spawn 2e PROCESSOR_REVISION=7e05
> spawn 2e DriverData=C:\Windows\System32\Drivers\DriverData
> spawn 2e COMMONPROGRAMFILES=C:\Program Files\Common Files
> spawn 2e PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 126 Stepping 5, 
> GenuineIntel
> spawn 2e SESSIONNAME=Console
> spawn 2e PS1=\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$ 
> spawn 2e HOMEPATH=\Users\cammm
> spawn 2e EM_PARENT_PROCESS_ID=4432
> spawn 2e TMP=/tmp
> spawn 2e 
> PATH=/usr/local/bin:/usr/bin:/usr/bin:/cygdrive/c/Windows/system32:/cygdrive/c/Windows:/cygdrive/c/Windows/System32/Wbem:/cygdrive/c/Windows/System32/WindowsPowerShell/v1.0:/cygdrive/c/Windows/System32/OpenSSH:/cygdrive/c/Program
>  Files/Git/cmd:/cygdrive/c/Users/cammm/AppData/Local/Microsoft/WindowsApps
> spawn 2e ProgramW6432=C:\Program Files
> spawn 2e PROFILEREAD=true
> spawn 2e WINDIR=C:\Windows
> spawn 2e FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer
> spawn 2e PROCESSOR_ARCHITECTURE=AMD64
> spawn 2e PUBLIC=C:\Users\Public
> spawn 2e SYSTEMDRIVE=C:
> spawn 2e EXECIGNORE=*.dll
> spawn 2e OLDPWD=/cygdrive/c/Users/cammm/32/gclm/gcl/gcl
> spawn 2e ProgramData=C:\ProgramData
> spawn 2e emacs_dir=C:/Users/Camm Maguire/Downloads/emacs-25.2-x86_64
> spawn 2e _=./saved_pre_gcl
> spawn 10
> =============================================================================
>
> Mark Geisert via Cygwin-apps <cygwin-a...@cygwin.com> writes:
>
>> On 4/19/2025 1:42 PM, Camm Maguire via Cygwin-apps wrote:
>>> Greetings!
>>> posix_spawn is returning non-zero without setting errno:
>>>    massert(!posix_spawnp(&pid, *p1, &file_actions, &attr,  (void
>>> *)p1, environ));
>>> Is this intended to be supported?  Is it known to be working or not
>>> working elsewhere?
>>
>> This kind of question should be sent to the main Cygwin mailing list
>> cygwin@cygwin.com, now CC'd.  Please follow up there if necessary.
>>
>> On failure, posix_spawnp() returns the error number rather than
>> setting errno.  This is a convention followed by some number of the
>> posix_*() functions; which ones is a question for readers of the POSIX
>> standard ;-).
>>
>> ..mark
>>
>>
>>

-- 
Camm Maguire                                        c...@maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to