-
-
Save lucaswerkmeister/50cfb49a5be6ddfa1172172048001147 to your computer and use it in GitHub Desktop.
dspinellis/dgsh#90 debug output
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10670: bash: pgrp: 10670, dgshpath: /usr/local/libexec/dgsh | |
10670: command: {{ cat & }} | cat | |
10670: Check if shell is dgsh. dgsh: 1 | |
10670: dgsh_in: 0, dgsh_out: 0 | |
10670: handle command | |
10670: parse and execute | |
10670: go yyparse() | |
10670: dgsh command | |
10670: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10670: dgsh_nest_level: -1, command: {{ cat & }} | cat, command type: 6 | |
10670: command type: 6, command: {{ cat & }} | cat | |
10670: cm_connection case | |
10670: command type: 6, command: {{ cat & }} | cat, compatible: 1 | |
10670: command type: 10, command: {{ cat & }}, compatible: 1 | |
10670: command type: 4, command: cat, compatible: 1 | |
10670: pipe_in: -1, pipe_out: -1 | |
10670: Created socketpair 3 -- 4 | |
10670: Check if wrapping is required | |
10670: go execute_command_internal | |
10670: pipe_in: -1, pipe_out: 4, asynchronous: 0 | |
10670: dgsh_nest_level: -1, should be compound command: {{ cat & }} | |
10670: go make_child() | |
10670: make child paren pid: 10672 | |
10670: Check if wrapping is required | |
10670: pipe_in: 3, pipe_out: -1, asynchronous: 0 | |
10670: dgsh_nest_level: -1, command: cat, command type: 4 | |
10670: command type: 4, command: cat | |
10670: cm_simple case | |
10670: pipe_in: 3, pipe_out: -1, async: 0 | |
10670: dofork?: 1 | |
10670: for simple command pipe_in: 3, pipe_out: -1, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10670: set DGSH_IN=1 | |
10670: set_dgsh_path(), path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10670: set_dgsh_path(): after prepending, path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: make child paren pid: 0 | |
10672: go execute_in_subshell() | |
10672: pipe_in: -1, pipe_out: 4, should_redir_stdin: 0 | |
10670: after putenv pipe_in: 3, pipe_out: -1, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10672: user_subshell: 0, asynchronous: 0 | |
10672: subshell_environment & SUBSHELL_PIPE = 16 | |
10672: close fd 3 | |
10672: CONCENTRATOR ZONE | |
10672: pipe_in: -1, pipe_out: 4 | |
10672: command type: 6, command: cat &, n: 0 | |
10672: command type: 4, command: cat, n: 0 | |
10672: 1 procs in dgsh group | |
10672: Inject wait command in multipipe block | |
10672: created concentrator command: dgsh-conc -o -n 1 | |
10672: Created socketpair 3 -- 5 | |
10672: go execute concentrator command: dgsh-conc -o -n 1 | |
10672: noinput set to: 1 | |
10672: set scatter conc 0 fd to 5 | |
10672: set scatter proc 0 fd to 3 | |
10672: pipe_in: -1, pipe_out: -3, asynchronous: 0 | |
10672: dgsh_nest_level: 0, command: dgsh-conc -o -n 1, command type: 4 | |
10672: output_type: 1, outsize: 1, insize: 0, out_index: 0,in_index: 0, pipe_in: -1, pipe_out: -3 | |
10672: dgsh_procs: pipe_in: -1, pipe_out: -3, out_index: 0, in_index: 0 | |
10672: command type: 4, command: dgsh-conc -o -n 1 | |
10672: cm_simple case | |
10672: pipe_in: -1, pipe_out: -3, async: 0 | |
10672: dofork?: 1 | |
10672: for simple command pipe_in: -1, pipe_out: -3, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10672: set DGSH_IN=1 | |
10672: set_dgsh_path(), path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10672: set_dgsh_path(): after prepending, path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: set DGSH_OUT=1 | |
10672: set_dgsh_path(), path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10672: after putenv pipe_in: -1, pipe_out: -3, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10670: Return 0 from fork | |
10673: go do piping after make_child() | |
10673: pipe_in: 3, pipe_out: -1 | |
10673: dup-close fd 3 to get stdin | |
10672: Return 0 from fork | |
10672: Completed waiting for pid: 10674 | |
10672: exit switch for command: 4 | |
10672: exec_result: 0 | |
10672: last command exit value: 0 | |
10672: dgsh-conc output (output type: 1) at level 0 returned 0 | |
10672: created concentrator command: dgsh-conc -i 1 | |
10673: Path to command: /usr/local/libexec/dgsh/cat | |
10672: Created socketpair 5 -- 6 | |
10672: go execute concentrator command: dgsh-conc -i 1 | |
10672: set gather conc 0 fd to 5 | |
10672: set gather proc 0 fd to 6 | |
10672: pipe_in: -3, pipe_out: 4, asynchronous: 0 | |
10672: dgsh_nest_level: 0, command: dgsh-conc -i 1, command type: 4 | |
10673: Command /usr/local/libexec/dgsh/cat is in the dgsh path | |
10672: output_type: 2, outsize: 1, insize: 1, out_index: 0,in_index: 0, pipe_in: -3, pipe_out: 4 | |
10672: dgsh_procs: pipe_in: -3, pipe_out: 4, out_index: 0, in_index: 0 | |
10673: go execute disk command | |
10672: Unset dgshpath from path | |
10672: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: dgshpath not in path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: command type: 4, command: dgsh-conc -i 1 | |
10674: go do piping after make_child() | |
10672: cm_simple case | |
10674: pipe_in: -1, pipe_out: -3 | |
10672: pipe_in: -3, pipe_out: 4, async: 0 | |
10674: dup-close fd 5 to get stdout | |
10672: dofork?: 1 | |
10672: for simple command pipe_in: -3, pipe_out: 4, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10672: set DGSH_IN=1 | |
10672: set_dgsh_path(), path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10672: set_dgsh_path(): after prepending, path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: set DGSH_OUT=1 | |
10672: set_dgsh_path(), path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10672: after putenv pipe_in: -3, pipe_out: 4, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10673: go do piping | |
10673: pipe_in: -1, pipe_out: -1 | |
10673: go shell_execve | |
10674: Path to command: /usr/local/libexec/dgsh/dgsh-conc | |
10674: Command /usr/local/libexec/dgsh/dgsh-conc is in the dgsh path | |
10674: go execute disk command | |
10674: go do piping | |
10674: pipe_in: -1, pipe_out: -1 | |
10674: go shell_execve | |
10672: Return 0 from fork | |
10672: Completed waiting for pid: 10675 | |
10672: exit switch for command: 4 | |
10672: exec_result: 0 | |
10672: last command exit value: 0 | |
10672: Conc command returned 0 | |
10672: dgsh-conc input (output type: 2) at level 0 returned 0 | |
10672: go do piping | |
10672: pipe_in: -1, pipe_out: -1 | |
10672: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10672: dgsh_nest_level: 0, command: {{ cat & wait; }}, command type: 10 | |
10672: Unset dgshpath from path | |
10672: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: dgshpath not in path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: command type: 10, command: {{ cat & wait; }} | |
10672: cm_dgsh case: pipe_in: -1, pipe_out: -1, dgsh_in: 0, dgsh_out: 0 | |
10672: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10672: dgsh_nest_level: 0, command: cat & wait, command type: 6 | |
10672: command type: 6, command: cat & wait | |
10672: cm_connection case | |
10672: async command first: cat, pipe_in: -1, pipe_out: -1 | |
10672: pipe_in: -1, pipe_out: -1, asynchronous: 1 | |
10672: dgsh_nest_level: 0, command: cat, command type: 4 | |
10672: output_type: 2, outsize: 1, insize: 1, out_index: 0,in_index: 0, pipe_in: -1, pipe_out: -1 | |
10672: go change pipe. command: cat, all out pipes: 1,in pipes: 1, pipe_in: -1, pipe_out: -1 | |
noinput: 1 | |
10672: dgsh_procs: pipe_in: 3, pipe_out: 6, out_index: 1, in_index: 1 | |
10672: command type: 4, command: cat | |
10672: cm_simple case | |
10672: pipe_in: 3, pipe_out: 6, async: 1 | |
10672: dofork?: 1 | |
10672: for simple command pipe_in: 3, pipe_out: 6, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10672: set DGSH_IN=1 | |
10672: set_dgsh_path(), path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10672: set_dgsh_path(): after prepending, path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: set DGSH_OUT=1 | |
10672: set_dgsh_path(), path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin, dgshpath: /usr/local/libexec/dgsh | |
10672: after putenv pipe_in: 3, pipe_out: 6, dgsh_in: 0, dgsh_out: 0, executing_function: 0 | |
10672: Return 0 from fork | |
10672: Completed waiting for pid: 10676 | |
10672: exit switch for command: 4 | |
10672: exec_result: 0 | |
10672: last command exit value: 0 | |
10672: async command second: wait, pipe_in: -1, pipe_out: -1 | |
10672: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10672: dgsh_nest_level: 0, command: wait, command type: 4 | |
10672: Unset dgshpath from path | |
10672: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: dgshpath not in path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10672: command type: 4, command: wait | |
10672: cm_simple case | |
10672: pipe_in: -1, pipe_out: -1, async: 0 | |
10672: dofork?: 0 | |
10676: go do piping after make_child() | |
10676: pipe_in: 3, pipe_out: 6 | |
10676: dup-close fd 3 to get stdin | |
10676: dup-close fd 6 to get stdout | |
10675: go do piping after make_child() | |
10675: pipe_in: -3, pipe_out: 4 | |
10675: dup-close fd 5 to get stdin | |
10675: dup-close fd 4 to get stdout | |
10676: Path to command: /usr/local/libexec/dgsh/cat | |
10676: Command /usr/local/libexec/dgsh/cat is in the dgsh path | |
10676: go execute disk command | |
10675: Path to command: /usr/local/libexec/dgsh/dgsh-conc | |
10676: async: CMD_STDIN_REDIR: 0, pipe_in: -1, stdin_redirects: 0 | |
10675: Command /usr/local/libexec/dgsh/dgsh-conc is in the dgsh path | |
10676: go do piping | |
10676: pipe_in: -1, pipe_out: -1 | |
10675: go execute disk command | |
10676: go shell_execve | |
10674: Message block created by process dgsh-conc with pid 10674. | |
10674: Origin: conc with pid 10674 | |
10674: **fd i: 1 set for writing | |
10675: go do piping | |
10675: pipe_in: -1, pipe_out: -1 | |
10674: write_message_block(): (null) (0) | |
10675: go shell_execve | |
10674: write_message_block(): Write message block. | |
10674: Try write struct of size: 88 | |
10674: write_message_block(): Wrote message block of size 88 bytes | |
10674: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 1. | |
10674: pi[1].pid: 0 is_ready?: 0 | |
10674: print_state(): pi[0].pid: 0 | |
10674: run ready?: 0, seen times: 0 | |
10674: written: 0, nfds: 0 | |
10674: print_state(): pi[1].pid: 0 | |
10674: run ready?: 0, seen times: 0 | |
10674: written: 0, nfds: 0 | |
10674: chosen_mb: 5635a6220040, i: 2, next: 3, pi[next].to_write: 0 | |
10674: free_mb(): Freed message block. | |
10673: bash: pgrp: 10670, dgshpath: /usr/local/libexec/dgsh | |
10676: bash: pgrp: 10670, dgshpath: /usr/local/libexec/dgsh | |
10673: Check if shell is dgsh. dgsh: 0 | |
10673: input from file: /usr/local/libexec/dgsh/cat | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: dgsh_nest_level: -1, command: function usage () | |
{ | |
echo 'Usage: cat [-u] [file ...]' 1>&2; | |
exit 2 | |
}, command type: 7 | |
10673: Unset dgshpath from path | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: command type: 7, command: function usage () | |
{ | |
echo 'Usage: cat [-u] [file ...]' 1>&2; | |
exit 2 | |
} | |
10673: exit switch for command: 7 | |
10673: exec_result: 0 | |
10673: last command exit value: 0 | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: dgsh_nest_level: -1, command: while getopts 'u' o; do | |
case "$o" in | |
u) | |
;; | |
*) | |
usage | |
;; | |
esac; | |
done, command type: 2 | |
10673: Unset dgshpath from path | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: command type: 2, command: while getopts 'u' o; do | |
case "$o" in | |
u) | |
;; | |
*) | |
usage | |
;; | |
esac; | |
done | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: dgsh_nest_level: -1, command: getopts 'u' o, command type: 4 | |
10673: Unset dgshpath from path | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: command type: 4, command: getopts 'u' o | |
10673: cm_simple case | |
10673: pipe_in: -1, pipe_out: -1, async: 0 | |
10676: Check if shell is dgsh. dgsh: 0 | |
10676: input from file: /usr/local/libexec/dgsh/cat | |
10673: dofork?: 0 | |
10676: go yyparse() | |
10673: Completed waiting for pid: -1 | |
10673: exit switch for command: 4 | |
10673: exec_result: 1 | |
10673: last command exit value: 1 | |
10676: go yyparse() | |
10673: exit switch for command: 2 | |
10673: exec_result: 0 | |
10673: last command exit value: 0 | |
10676: go yyparse() | |
10673: go yyparse() | |
10673: go yyparse() | |
10676: go yyparse() | |
10676: go yyparse() | |
10676: go yyparse() | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: dgsh_nest_level: -1, command: shift $((OPTIND-1)), command type: 4 | |
10673: Unset dgshpath from path | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: command type: 4, command: shift $((OPTIND-1)) | |
10673: cm_simple case | |
10673: pipe_in: -1, pipe_out: -1, async: 0 | |
10673: dofork?: 0 | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: Completed waiting for pid: -1 | |
10673: exit switch for command: 4 | |
10673: exec_result: 0 | |
10673: last command exit value: 0 | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: dgsh_nest_level: -1, command: function usage () | |
{ | |
echo 'Usage: cat [-u] [file ...]' 1>&2; | |
exit 2 | |
10673: dgsh_nest_level: -1, command: declare -a opts, command type: 4 | |
10673: Unset dgshpath from path | |
}, command type: 7 | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: Unset dgshpath from path | |
10673: command type: 4, command: declare -a opts | |
10673: cm_simple case | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: pipe_in: -1, pipe_out: -1, async: 0 | |
10673: dofork?: 0 | |
10676: command type: 7, command: function usage () | |
{ | |
echo 'Usage: cat [-u] [file ...]' 1>&2; | |
exit 2 | |
} | |
10673: Completed waiting for pid: -1 | |
10673: exit switch for command: 4 | |
10673: exec_result: 0 | |
10673: last command exit value: 0 | |
10673: go yyparse() | |
10673: go yyparse() | |
10676: exit switch for command: 7 | |
10676: exec_result: 0 | |
10676: last command exit value: 0 | |
10673: go yyparse() | |
10676: go yyparse() | |
10676: go yyparse() | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: dgsh_nest_level: -1, command: for i in "$@"; | |
do | |
opts+=('-i' "$i"); shift; | |
done, command type: 0 | |
10673: Unset dgshpath from path | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: command type: 0, command: for i in "$@"; | |
do | |
opts+=('-i' "$i"); shift; | |
done | |
10673: exit switch for command: 0 | |
10673: exec_result: 0 | |
10673: last command exit value: 0 | |
10673: go yyparse() | |
10673: go yyparse() | |
10673: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10673: dgsh_nest_level: -1, command: exec dgsh-tee "${opts[@]}", command type: 4 | |
10673: Unset dgshpath from path | |
10673: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10673: command type: 4, command: exec dgsh-tee "${opts[@]}" | |
10673: cm_simple case | |
10673: pipe_in: -1, pipe_out: -1, async: 0 | |
10673: dofork?: 0 | |
10676: dgsh_nest_level: -1, command: while getopts 'u' o; do | |
case "$o" in | |
u) | |
;; | |
*) | |
usage | |
;; | |
esac; | |
done, command type: 2 | |
10676: Unset dgshpath from path | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: command type: 2, command: while getopts 'u' o; do | |
case "$o" in | |
u) | |
;; | |
*) | |
usage | |
;; | |
esac; | |
done | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: dgsh_nest_level: -1, command: getopts 'u' o, command type: 4 | |
10676: Unset dgshpath from path | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: command type: 4, command: getopts 'u' o | |
10676: cm_simple case | |
10676: pipe_in: -1, pipe_out: -1, async: 0 | |
10676: dofork?: 0 | |
10676: Completed waiting for pid: -1 | |
10676: exit switch for command: 4 | |
10676: exec_result: 1 | |
10676: last command exit value: 1 | |
10676: exit switch for command: 2 | |
10676: exec_result: 0 | |
10676: last command exit value: 0 | |
10676: go yyparse() | |
10676: go yyparse() | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: dgsh_nest_level: -1, command: shift $((OPTIND-1)), command type: 4 | |
10676: Unset dgshpath from path | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: command type: 4, command: shift $((OPTIND-1)) | |
10676: cm_simple case | |
10676: pipe_in: -1, pipe_out: -1, async: 0 | |
10676: dofork?: 0 | |
10676: Completed waiting for pid: -1 | |
10676: exit switch for command: 4 | |
10676: exec_result: 0 | |
10676: last command exit value: 0 | |
10676: go yyparse() | |
10676: go yyparse() | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: dgsh_nest_level: -1, command: declare -a opts, command type: 4 | |
10676: Unset dgshpath from path | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: command type: 4, command: declare -a opts | |
10676: cm_simple case | |
10676: pipe_in: -1, pipe_out: -1, async: 0 | |
10676: dofork?: 0 | |
10676: Completed waiting for pid: -1 | |
10676: exit switch for command: 4 | |
10676: exec_result: 0 | |
10676: last command exit value: 0 | |
10676: go yyparse() | |
10676: go yyparse() | |
10676: go yyparse() | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: dgsh_nest_level: -1, command: for i in "$@"; | |
do | |
opts+=('-i' "$i"); shift; | |
done, command type: 0 | |
10676: Unset dgshpath from path | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: command type: 0, command: for i in "$@"; | |
do | |
opts+=('-i' "$i"); shift; | |
done | |
10676: exit switch for command: 0 | |
10676: exec_result: 0 | |
10676: last command exit value: 0 | |
10676: go yyparse() | |
10676: go yyparse() | |
10676: pipe_in: -1, pipe_out: -1, asynchronous: 0 | |
10676: dgsh_nest_level: -1, command: exec dgsh-tee "${opts[@]}", command type: 4 | |
10676: Unset dgshpath from path | |
10676: dgshpath in path: /usr/local/libexec/dgsh:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/luwe/.local/bin | |
10676: command type: 4, command: exec dgsh-tee "${opts[@]}" | |
10676: cm_simple case | |
10676: pipe_in: -1, pipe_out: -1, async: 0 | |
10676: dofork?: 0 | |
10673: dgsh_negotiate(): Tool cat with pid 10673 negotiating: nin=-1 nout=-1. | |
10673: Try to get environment variable DGSH_IN. | |
10673: getenv() returned string value 1. | |
10673: Integer form of value is 1. | |
10673: Try to get environment variable DGSH_OUT. | |
10673: getenv() returned string value 0. | |
10673: Integer form of value is 0. | |
10673: dgsh_negotiate(): perform round | |
10673: Next operation is a read | |
10676: dgsh_negotiate(): Tool dgsh-tee with pid 10676 negotiating: nin=-1 nout=-1. | |
10676: Try to get environment variable DGSH_IN. | |
10676: getenv() returned string value 1. | |
10676: Integer form of value is 1. | |
10676: Try to get environment variable DGSH_OUT. | |
10676: getenv() returned string value 1. | |
10676: Integer form of value is 1. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a read | |
10676: read on fd 0 is active. | |
10676: read_message_block(): dgsh-tee (0) | |
10676: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10676: Try read from fd 0. | |
10676: Read succeeded: 88 bytes read from 0. | |
10676: read_message_block(): Read message block or solution from node -1 sent from file descriptor: stdout. | |
10676: fill_node(): dgsh_in: 1, self_node.requires_channels: -1 | |
10676: fill_node(): dgsh_out: 1, self_node.provides_channels: -1 | |
10676: Dgsh node for tool dgsh-tee with pid 10676 created. | |
10676: add_node(): Added node dgsh-tee in position 0 on dgsh graph, initiator: 10674 | |
10676: Dgsh graph now has 1 nodes. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a write | |
10676: STDOUT set for write | |
10676: write on fd 1 is active. | |
10676: set_dispatcher(): message block origin set to 0 and writing on the output side | |
10676: write_message_block(): dgsh-tee (0) | |
10676: write_message_block(): Write message block. | |
10676: Try write struct of size: 88 | |
10676: write_message_block(): Wrote message block of size 88 bytes | |
10676: Try write struct of size: 124 | |
10676: write_message_block(): Wrote nodes of size 124 bytes | |
10676: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 1. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a read | |
10675: read_message_block(): (null) (0) | |
10675: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10675: Read succeeded: 88 bytes read from 0. | |
10675: read_chunk(): buf_size: 124, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10675: Read succeeded: 124 bytes read from 0. | |
10675: alloc_copy_nodes(): Node array recovered. | |
10675: read_message_block(): Read message block or solution from node 0 sent from file descriptor: stdout. | |
10675: pass_message_blocks(): next write via fd 1 to pid 0 | |
10675: set_io_channels: n_proc_pids: 1 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: initiator pid: 10674 | |
10675: pi[0].seen: 0 | |
10675: write: 0 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 10674 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10675: print_state(): pi[1].pid: 0 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10675: Origin: conc with pid 10675 | |
10675: **fd i: 1 set for writing | |
10675: write_message_block(): (null) (0) | |
10675: write_message_block(): Write message block. | |
10675: Try write struct of size: 88 | |
10675: write_message_block(): Wrote message block of size 88 bytes | |
10675: Try write struct of size: 124 | |
10675: write_message_block(): Wrote nodes of size 124 bytes | |
10675: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 1. | |
10673: read on fd 0 is active. | |
10675: pi[1].pid: 0 is_ready?: 0 | |
10675: print_state(): pi[0].pid: 10676 | |
10673: read_message_block(): cat (0) | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10673: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10675: print_state(): pi[1].pid: 0 | |
10673: Try read from fd 0. | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10673: Read succeeded: 88 bytes read from 0. | |
10675: chosen_mb: 55827562a0a0, i: 2, next: 2, pi[next].to_write: 61 | |
10673: read_chunk(): buf_size: 124, IOV_MAX: 1024 | |
10675: free_mb(): Freed message block. | |
10673: Try read from fd 0. | |
10673: Read succeeded: 124 bytes read from 0. | |
10673: alloc_copy_nodes(): Node array recovered. | |
10673: read_message_block(): Read message block or solution from node 0 sent from file descriptor: stdout. | |
10673: node name: dgsh-tee, pid: 10676 | |
10673: fill_node(): dgsh_in: 1, self_node.requires_channels: -1 | |
10673: fill_node(): dgsh_out: 0, self_node.provides_channels: -1 | |
10673: Dgsh node for tool cat with pid 10673 created. | |
10673: add_node(): Added node cat in position 1 on dgsh graph, initiator: 10674 | |
10673: Dgsh graph now has 2 nodes. | |
10673: New dgsh edge from 0 to 1 with 0 instances. | |
10673: Added edge (0 -> 1) in dgsh graph. | |
10673: Dgsh graph now has 1 edges. | |
10673: dgsh_negotiate(): perform round | |
10673: Next operation is a write | |
10673: write on fd 0 is active. | |
10673: set_dispatcher(): message block origin set to 1 and writing on the input side | |
10673: write_message_block(): cat (1) | |
10673: write_message_block(): Write message block. | |
10673: Try write struct of size: 88 | |
10673: write_message_block(): Wrote message block of size 88 bytes | |
10673: Try write struct of size: 248 | |
10673: write_message_block(): Wrote nodes of size 248 bytes | |
10673: Try write struct of size: 20 | |
10675: read_message_block(): (null) (0) | |
10675: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10673: write_message_block(): Wrote edges of size 20 bytes | |
10675: Try read from fd 1. | |
10673: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 0. | |
10673: dgsh_negotiate(): perform round | |
10675: Read succeeded: 88 bytes read from 1. | |
10673: Next operation is a read | |
10675: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10675: Read succeeded: 248 bytes read from 1. | |
10675: alloc_copy_nodes(): Node array recovered. | |
10675: read_message_block(): Read 1 negotiation graph edges. | |
10675: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10675: Read succeeded: 20 bytes read from 1. | |
10675: read_message_block(): Read message block or solution from node 1 sent from file descriptor: stdin. | |
10675: pass_message_blocks(): next write via fd 0 to pid 10676 | |
10675: **Store origin: 1, fd: stdin | |
10675: set_io_channels: n_proc_pids: 1 | |
10675: set_io_channels(): Added conc with pid: 10675, now n_concs: 1 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: initiator pid: 10674 | |
10675: pi[1].seen: 0 | |
10675: write: 0 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 10674 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10675: Origin: conc with pid 10675 | |
10675: **fd i: 0 set for writing | |
10675: write_message_block(): (null) (0) | |
10675: write_message_block(): Write message block. | |
10675: Try write struct of size: 88 | |
10675: write_message_block(): Wrote message block of size 88 bytes | |
10675: Try write struct of size: 248 | |
10675: write_message_block(): Wrote nodes of size 248 bytes | |
10675: Try write struct of size: 32 | |
10676: read on fd 1 is active. | |
10675: write_concs(): Wrote conc structures of size 32 bytes | |
10676: read_message_block(): dgsh-tee (0) | |
10675: Try write struct of size: 4 | |
10676: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10675: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: Try write struct of size: 20 | |
10676: Read succeeded: 88 bytes read from 1. | |
10675: write_message_block(): Wrote edges of size 20 bytes | |
10676: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10675: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 0. | |
10676: Try read from fd 1. | |
10675: pi[0].pid: 10676 is_ready?: 0 | |
10676: Read succeeded: 248 bytes read from 1. | |
10675: print_state(): pi[0].pid: 10676 | |
10676: alloc_copy_nodes(): Node array recovered. | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10676: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10675: print_state(): pi[1].pid: 10673 | |
10676: Try read from fd 1. | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10676: Read succeeded: 32 bytes read from 1. | |
10675: chosen_mb: 55827562a040, i: 2, next: 2, pi[next].to_write: 61 | |
10676: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10675: free_mb(): Freed message block. | |
10676: Read succeeded: 4 bytes read from 1. | |
10676: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10676: read_message_block(): Read 1 negotiation graph edges. | |
10676: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10676: Read succeeded: 20 bytes read from 1. | |
10676: read_message_block(): Read message block or solution from node 1 sent from file descriptor: stdin. | |
10676: node name: dgsh-tee, pid: 10676 | |
10676: New dgsh edge from 0 to 1 with 0 instances. | |
10676: lookup_dgsh_edge(): Edge 0 to 1 exists. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a write | |
10676: STDIN set for write | |
10676: write on fd 0 is active. | |
10676: set_dispatcher(): message block origin set to 0 and writing on the input side | |
10676: write_message_block(): dgsh-tee (0) | |
10676: write_message_block(): Write message block. | |
10676: Try write struct of size: 88 | |
10676: write_message_block(): Wrote message block of size 88 bytes | |
10676: Try write struct of size: 248 | |
10676: write_message_block(): Wrote nodes of size 248 bytes | |
10676: Try write struct of size: 32 | |
10676: write_concs(): Wrote conc structures of size 32 bytes | |
10676: Try write struct of size: 4 | |
10676: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10676: Try write struct of size: 20 | |
10676: write_message_block(): Wrote edges of size 20 bytes | |
10676: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 0. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a read | |
10674: read_message_block(): (null) (0) | |
10674: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 88 bytes read from 1. | |
10674: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 248 bytes read from 1. | |
10674: alloc_copy_nodes(): Node array recovered. | |
10674: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 32 bytes read from 1. | |
10674: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 4 bytes read from 1. | |
10674: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10674: read_message_block(): Read 1 negotiation graph edges. | |
10674: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 20 bytes read from 1. | |
10674: read_message_block(): Read message block or solution from node 0 sent from file descriptor: stdin. | |
10674: pass_message_blocks(): next write via fd 1 to pid 0 | |
10674: pass_message_blocks(): Gathered I/O requirements. | |
10674: node_match_constraints(): node at index 0. | |
10674: Node dgsh-tee, index 0, channels required -1, channels_provided -1, dgsh_in 1, dgsh_out 1. | |
10674: dry_match_io_constraints(): edge at index 0 from 0 to 1, instances 0, from_instances 0, to_instances 0. | |
10674: dry_match_io_constraints(): Node at index 0 has 1 outgoing edges and 0 incoming. | |
10674: satisfy_io_constraints(): edge from 0 to 1, is_edge_incoming: 0, free_instances: -1, weight: -1, modulo: 0, from_instances: -1, to_instances: 0. | |
10674: satisfy_io_constraints(): Number of edges: 1, this_channel_constraint: -1, free instances: -1. | |
10674: node_match_constraints(): node at index 1. | |
10674: Node cat, index 1, channels required -1, channels_provided -1, dgsh_in 1, dgsh_out 0. | |
10674: dry_match_io_constraints(): edge at index 0 from 0 to 1, instances 0, from_instances -1, to_instances 0. | |
10674: dry_match_io_constraints(): Node at index 1 has 0 outgoing edges and 1 incoming. | |
10674: satisfy_io_constraints(): edge from 0 to 1, is_edge_incoming: 1, free_instances: -1, weight: -1, modulo: 0, from_instances: -1, to_instances: -1. | |
10674: satisfy_io_constraints(): Number of edges: 1, this_channel_constraint: -1, free instances: -1. | |
10674: cross_match_constraints(): node dgsh-tee, index 0, channels required -1, channels_provided -1, dgsh_in 1, dgsh_out 1. | |
10674: cross_match_io_constraints(): edge from 0 to 1, this_channel_constraint: -1, is_incoming: 0, from_instances: -1, to_instances -1. | |
10674: cross_match_io_constraints(): edge from 0 to 1, this_channel_constraint: -1, is_incoming: 0, from_instances: -1, to_instances -1, edge instances: 1. | |
10674: cross_match_constraints(): node cat, index 1, channels required -1, channels_provided -1, dgsh_in 1, dgsh_out 0. | |
10674: cross_match_io_constraints(): edge from 0 to 1, this_channel_constraint: -1, is_incoming: 1, from_instances: -1, to_instances -1. | |
10674: cross_match_io_constraints(): edge from 0 to 1, this_channel_constraint: -1, is_incoming: 1, from_instances: -1, to_instances -1, edge instances: 1. | |
10674: cross_match_constraints(): Cross matched constraints of 2 out of 2 nodes for 1 edges out of 1 edges. | |
10674: solve_graph(): exit_state: 0, retries: 0 | |
10674: prepare_solution(): Node dgsh-tee, pid: 10676, connections in: 0, connections out: 1. | |
10674: make_compact_edge_array():Copied edge 0 -> 1 (1) at index 0. | |
10674: prepare_solution(): Node cat, pid: 10673, connections in: 1, connections out: 0. | |
10674: make_compact_edge_array():Copied edge 0 -> 1 (1) at index 0. | |
10674: calculate_conc_fds for 1 n_concs | |
10674: calculate_conc_fds() for conc 10675 at index 0 with 1 n_proc_pids | |
10674: calculate_conc_fds(): conc pid 10675 at index 0: 1 outgoing fds for endpoint pid 10673 recovered | |
10674: calculate_conc_fds(): conc pid 10675 at index 0: 1 incoming fds for pid 10676 recovered | |
10674: calculate_conc_fds(): Conc pid 10675 at index 0 has 1 incoming fds and 1 outgoing fds | |
10674: calculate_conc_fds(): Calculated fds for 1 concs so far | |
10674: solve_graph: exit_state: 0 | |
10674: pass_message_blocks(): Computed solution | |
10674: print_state(): pi[1].pid: 10676 | |
10674: initiator pid: 10674 | |
10674: pi[1].seen: 0 | |
10674: write: 0 | |
10674: print_state(): pi[1].pid: 10676 | |
10674: run ready?: 0, seen times: 0 | |
10674: written: 0, nfds: 10674 | |
10674: print_state(): pi[0].pid: 0 | |
10674: run ready?: 0, seen times: 0 | |
10674: written: 0, nfds: 0 | |
10674: print_state(): pi[1].pid: 10676 | |
10674: run ready?: 0, seen times: 0 | |
10674: written: 0, nfds: 0 | |
10674: Origin: conc with pid 10674 | |
10674: **fd i: 1 set for writing | |
10674: write_message_block(): (null) (0) | |
10674: write_message_block(): Write message block. | |
10674: Try write struct of size: 88 | |
10674: write_message_block(): Wrote message block of size 88 bytes | |
10674: Try write struct of size: 248 | |
10674: write_message_block(): Wrote nodes of size 248 bytes | |
10674: Try write struct of size: 32 | |
10674: write_concs(): Wrote conc structures of size 32 bytes | |
10674: Try write struct of size: 4 | |
10674: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10674: Try write struct of size: 80 | |
10674: write_graph_solution(): Wrote graph solution of size 80 bytes | |
10674: Try write struct of size: 20 | |
10676: read on fd 0 is active. | |
10674: write_graph_solution(): Wrote node's 0 1 outgoing edges of size 20 bytes | |
10674: Try write struct of size: 20 | |
10676: read_message_block(): dgsh-tee (0) | |
10676: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10674: write_graph_solution(): Wrote node's 1 1 incoming edges of size 20 bytes | |
10676: Try read from fd 0. | |
10674: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 1. | |
10674: pi[1].pid: 10676 is_ready?: 0 | |
10676: Read succeeded: 88 bytes read from 0. | |
10674: print_state(): pi[0].pid: 0 | |
10674: run ready?: 0, seen times: 0 | |
10676: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10674: written: 0, nfds: 0 | |
10676: Try read from fd 0. | |
10674: print_state(): pi[1].pid: 10676 | |
10676: Read succeeded: 248 bytes read from 0. | |
10674: run ready?: 0, seen times: 0 | |
10676: alloc_copy_nodes(): Node array recovered. | |
10674: written: 1, nfds: 0 | |
10676: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10676: Try read from fd 0. | |
10674: chosen_mb: 5635a62200a0, i: 2, next: 3, pi[next].to_write: 0 | |
10676: Read succeeded: 32 bytes read from 0. | |
10674: free_graph_solution: freed 2 nodes. | |
10676: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10676: Try read from fd 0. | |
10674: free_mb(): Freed message block. | |
10676: Read succeeded: 4 bytes read from 0. | |
10676: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10676: read_chunk(): buf_size: 80, IOV_MAX: 1024 | |
10676: Try read from fd 0. | |
10676: Read succeeded: 80 bytes read from 0. | |
10676: Node 0 with 0 incoming edges at 0 and 1 outgoing edges at 5635a62201e0. | |
10676: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10676: Try read from fd 0. | |
10676: Read succeeded: 20 bytes read from 0. | |
10676: Node 1 with 1 incoming edges at 5635a6220160 and 0 outgoing edges at 0. | |
10676: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10676: Try read from fd 0. | |
10676: Read succeeded: 20 bytes read from 0. | |
10676: read_message_block(): Read message block or solution from node -1 sent from file descriptor: stdout. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a write | |
10676: STDOUT set for write | |
10676: write on fd 1 is active. | |
10676: set_dispatcher(): message block origin set to 0 and writing on the output side | |
10676: write_message_block(): dgsh-tee (0) | |
10676: write_message_block(): Write message block. | |
10676: Try write struct of size: 88 | |
10676: write_message_block(): Wrote message block of size 88 bytes | |
10676: Try write struct of size: 248 | |
10676: write_message_block(): Wrote nodes of size 248 bytes | |
10676: Try write struct of size: 32 | |
10676: write_concs(): Wrote conc structures of size 32 bytes | |
10675: read_message_block(): (null) (0) | |
10676: Try write struct of size: 4 | |
10675: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10676: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: Try read from fd 0. | |
10676: Try write struct of size: 80 | |
10676: write_graph_solution(): Wrote graph solution of size 80 bytes | |
10675: Read succeeded: 88 bytes read from 0. | |
10676: Try write struct of size: 20 | |
10675: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10676: write_graph_solution(): Wrote node's 0 1 outgoing edges of size 20 bytes | |
10676: Try write struct of size: 20 | |
10675: Read succeeded: 248 bytes read from 0. | |
10675: alloc_copy_nodes(): Node array recovered. | |
10676: write_graph_solution(): Wrote node's 1 1 incoming edges of size 20 bytes | |
10676: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 1. | |
10675: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10676: dgsh_negotiate(): perform round | |
10675: Try read from fd 0. | |
10676: Next operation is a read | |
10675: Read succeeded: 32 bytes read from 0. | |
10675: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10675: Read succeeded: 4 bytes read from 0. | |
10675: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: read_chunk(): buf_size: 80, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10675: Read succeeded: 80 bytes read from 0. | |
10675: Node 0 with 0 incoming edges at 0 and 1 outgoing edges at 55a97f44c480. | |
10675: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10675: Read succeeded: 20 bytes read from 0. | |
10675: Node 1 with 1 incoming edges at 55a97f44c4a0 and 0 outgoing edges at 0. | |
10675: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10675: Try read from fd 0. | |
10675: Read succeeded: 20 bytes read from 0. | |
10675: read_message_block(): Read message block or solution from node 0 sent from file descriptor: stdout. | |
10675: pass_message_blocks(): next write via fd 1 to pid 10673 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: initiator pid: 10674 | |
10675: pi[0].seen: 1 | |
10675: write: 0 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 0, seen times: 1 | |
10675: written: 0, nfds: 10674 | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 0, seen times: 1 | |
10675: written: 0, nfds: 0 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 0, nfds: 0 | |
10675: Origin: conc with pid 10675 | |
10675: **fd i: 1 set for writing | |
10675: write_message_block(): (null) (0) | |
10675: write_message_block(): Write message block. | |
10675: Try write struct of size: 88 | |
10675: write_message_block(): Wrote message block of size 88 bytes | |
10675: Try write struct of size: 248 | |
10675: write_message_block(): Wrote nodes of size 248 bytes | |
10675: Try write struct of size: 32 | |
10673: read on fd 0 is active. | |
10675: write_concs(): Wrote conc structures of size 32 bytes | |
10673: read_message_block(): cat (1) | |
10675: Try write struct of size: 4 | |
10673: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10673: Try read from fd 0. | |
10675: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: Try write struct of size: 80 | |
10673: Read succeeded: 88 bytes read from 0. | |
10675: write_graph_solution(): Wrote graph solution of size 80 bytes | |
10675: Try write struct of size: 20 | |
10673: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10673: Try read from fd 0. | |
10675: write_graph_solution(): Wrote node's 0 1 outgoing edges of size 20 bytes | |
10673: Read succeeded: 248 bytes read from 0. | |
10675: Try write struct of size: 20 | |
10673: alloc_copy_nodes(): Node array recovered. | |
10675: write_graph_solution(): Wrote node's 1 1 incoming edges of size 20 bytes | |
10673: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10673: Try read from fd 0. | |
10675: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 1. | |
10675: pi[1].pid: 10673 is_ready?: 0 | |
10673: Read succeeded: 32 bytes read from 0. | |
10675: print_state(): pi[0].pid: 10676 | |
10673: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10675: run ready?: 0, seen times: 1 | |
10673: Try read from fd 0. | |
10675: written: 0, nfds: 0 | |
10675: print_state(): pi[1].pid: 10673 | |
10673: Read succeeded: 4 bytes read from 0. | |
10675: run ready?: 0, seen times: 0 | |
10675: written: 1, nfds: 0 | |
10673: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: chosen_mb: 55827562a0a0, i: 2, next: 2, pi[next].to_write: 61 | |
10673: read_chunk(): buf_size: 80, IOV_MAX: 1024 | |
10673: Try read from fd 0. | |
10675: free_graph_solution: freed 2 nodes. | |
10673: Read succeeded: 80 bytes read from 0. | |
10675: free_mb(): Freed message block. | |
10673: Node 0 with 0 incoming edges at 0 and 1 outgoing edges at 55827562a260. | |
10673: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10673: Try read from fd 0. | |
10673: Read succeeded: 20 bytes read from 0. | |
10673: Node 1 with 1 incoming edges at 55827562a280 and 0 outgoing edges at 0. | |
10673: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10673: Try read from fd 0. | |
10673: Read succeeded: 20 bytes read from 0. | |
10673: read_message_block(): Read message block or solution from node 0 sent from file descriptor: stdout. | |
10673: dgsh_negotiate(): perform round | |
10673: Next operation is a write | |
10673: write on fd 0 is active. | |
10673: set_dispatcher(): message block origin set to 1 and writing on the input side | |
10673: write_message_block(): cat (1) | |
10673: write_message_block(): Write message block. | |
10673: Try write struct of size: 88 | |
10673: write_message_block(): Wrote message block of size 88 bytes | |
10673: Try write struct of size: 248 | |
10673: write_message_block(): Wrote nodes of size 248 bytes | |
10675: read_message_block(): (null) (0) | |
10673: Try write struct of size: 32 | |
10675: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10673: write_concs(): Wrote conc structures of size 32 bytes | |
10673: Try write struct of size: 4 | |
10675: Read succeeded: 88 bytes read from 1. | |
10675: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10673: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: Try read from fd 1. | |
10673: Try write struct of size: 80 | |
10675: Read succeeded: 248 bytes read from 1. | |
10673: write_graph_solution(): Wrote graph solution of size 80 bytes | |
10675: alloc_copy_nodes(): Node array recovered. | |
10673: Try write struct of size: 20 | |
10675: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10673: write_graph_solution(): Wrote node's 0 1 outgoing edges of size 20 bytes | |
10673: Try write struct of size: 20 | |
10675: Read succeeded: 32 bytes read from 1. | |
10675: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10673: write_graph_solution(): Wrote node's 1 1 incoming edges of size 20 bytes | |
10675: Try read from fd 1. | |
10673: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 0. | |
10675: Read succeeded: 4 bytes read from 1. | |
10673: dgsh_negotiate(): cat (1) leaves after write with state COMPLETE. | |
10675: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10673: alloc_io_fds(): self node: 1, incoming edges: 1, outgoing edges: 0 | |
10675: read_chunk(): buf_size: 80, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10673: read_input_fds(): 1 incoming edges to inspect of node 1. | |
10675: Read succeeded: 80 bytes read from 1. | |
10675: Node 0 with 0 incoming edges at 0 and 1 outgoing edges at 55e66dbfa390. | |
10675: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10675: Read succeeded: 20 bytes read from 1. | |
10675: Node 1 with 1 incoming edges at 55e66dbfa3b0 and 0 outgoing edges at 0. | |
10675: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10675: Try read from fd 1. | |
10675: Read succeeded: 20 bytes read from 1. | |
10675: read_message_block(): Read message block or solution from node 1 sent from file descriptor: stdin. | |
10675: pass_message_blocks(): next write via fd 0 to pid 10676 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: initiator pid: 10674 | |
10675: pi[1].seen: 1 | |
10675: write: 1 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: run ready?: 0, seen times: 1 | |
10675: written: 1, nfds: 10674 | |
10675: **pass_message_blocks(): pi[1] is run ready | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 0, seen times: 1 | |
10675: written: 0, nfds: 0 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: run ready?: 1, seen times: 1 | |
10675: written: 1, nfds: 1 | |
10675: Origin: conc with pid 10675 | |
10675: **fd i: 0 set for writing | |
10675: write_message_block(): (null) (0) | |
10675: write_message_block(): Write message block. | |
10675: Try write struct of size: 88 | |
10675: write_message_block(): Wrote message block of size 88 bytes | |
10675: Try write struct of size: 248 | |
10675: write_message_block(): Wrote nodes of size 248 bytes | |
10676: read on fd 1 is active. | |
10675: Try write struct of size: 32 | |
10676: read_message_block(): dgsh-tee (0) | |
10675: write_concs(): Wrote conc structures of size 32 bytes | |
10676: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10675: Try write struct of size: 4 | |
10676: Try read from fd 1. | |
10676: Read succeeded: 88 bytes read from 1. | |
10675: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10675: Try write struct of size: 80 | |
10676: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10675: write_graph_solution(): Wrote graph solution of size 80 bytes | |
10675: Try write struct of size: 20 | |
10676: Read succeeded: 248 bytes read from 1. | |
10676: alloc_copy_nodes(): Node array recovered. | |
10675: write_graph_solution(): Wrote node's 0 1 outgoing edges of size 20 bytes | |
10676: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10675: Try write struct of size: 20 | |
10676: Try read from fd 1. | |
10675: write_graph_solution(): Wrote node's 1 1 incoming edges of size 20 bytes | |
10675: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 0. | |
10675: pi[0].pid: 10676 is_ready?: 1 | |
10675: **pass_message_blocks(): pi[0] is run ready | |
10675: print_state(): pi[0].pid: 10676 | |
10675: run ready?: 1, seen times: 1 | |
10675: written: 1, nfds: 1 | |
10675: print_state(): pi[1].pid: 10673 | |
10675: run ready?: 1, seen times: 1 | |
10675: written: 1, nfds: 2 | |
10675: pass_message_blocks(): conc leaves negotiation | |
10675: gather_input_fds(): fds to write: 1 | |
10675: gather_input_fds(): fds to read for p[0].pid 10676: 1 | |
10676: Read succeeded: 32 bytes read from 1. | |
10676: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10676: Read succeeded: 4 bytes read from 1. | |
10676: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10676: read_chunk(): buf_size: 80, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10676: Read succeeded: 80 bytes read from 1. | |
10676: Node 0 with 0 incoming edges at 0 and 1 outgoing edges at 55827562a260. | |
10676: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10676: Read succeeded: 20 bytes read from 1. | |
10676: Node 1 with 1 incoming edges at 55827562a280 and 0 outgoing edges at 0. | |
10676: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10676: Try read from fd 1. | |
10676: Read succeeded: 20 bytes read from 1. | |
10676: read_message_block(): Read message block or solution from node 1 sent from file descriptor: stdin. | |
10676: dgsh_negotiate(): perform round | |
10676: Next operation is a write | |
10676: STDIN set for write | |
10676: write on fd 0 is active. | |
10676: set_dispatcher(): message block origin set to 0 and writing on the input side | |
10676: write_message_block(): dgsh-tee (0) | |
10676: write_message_block(): Write message block. | |
10676: Try write struct of size: 88 | |
10676: write_message_block(): Wrote message block of size 88 bytes | |
10676: Try write struct of size: 248 | |
10676: write_message_block(): Wrote nodes of size 248 bytes | |
10676: Try write struct of size: 32 | |
10676: write_concs(): Wrote conc structures of size 32 bytes | |
10676: Try write struct of size: 4 | |
10676: write_concs(): Wrote 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10676: Try write struct of size: 80 | |
10676: write_graph_solution(): Wrote graph solution of size 80 bytes | |
10676: Try write struct of size: 20 | |
10676: write_graph_solution(): Wrote node's 0 1 outgoing edges of size 20 bytes | |
10676: Try write struct of size: 20 | |
10676: write_graph_solution(): Wrote node's 1 1 incoming edges of size 20 bytes | |
10676: write_message_block(): Shipped message block or solution to next node in graph from file descriptor: 0. | |
10674: read_message_block(): (null) (0) | |
10676: dgsh_negotiate(): dgsh-tee (0) leaves after write with state COMPLETE. | |
10676: alloc_io_fds(): self node: 0, incoming edges: 0, outgoing edges: 1 | |
10676: read_input_fds(): 0 incoming edges to inspect of node 0. | |
10674: read_chunk(): buf_size: 88, IOV_MAX: 1024 | |
10676: write_output_fds(): for node at index 0 with 1 outgoing edges. | |
10674: Try read from fd 1. | |
10676: write_output_fds(): created pipe pair 3 - 4. Transmitting fd 3 through sendmsg(). | |
10674: Read succeeded: 88 bytes read from 1. | |
10676: establish_io_connections(): input fds: 0, output fds: 1 | |
10676: establish_io_connections(): closed STDOUT, dup 4 returned 1 | |
10674: read_chunk(): buf_size: 248, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 248 bytes read from 1. | |
10674: alloc_copy_nodes(): Node array recovered. | |
10674: read_chunk(): buf_size: 32, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10675: gather_input_fds(): Read fd: 4 from input channel: 0 | |
10674: Read succeeded: 32 bytes read from 1. | |
10675: free_graph_solution: freed 2 nodes. | |
10674: read_chunk(): buf_size: 4, IOV_MAX: 1024 | |
10675: free_mb(): Freed message block. | |
10675: conc with pid 10675 terminates normally | |
10674: Try read from fd 1. | |
10674: Read succeeded: 4 bytes read from 1. | |
10674: read_concs(): Read 1 proc_pids for conc 10675 at index 0 of size 4 bytes | |
10674: read_chunk(): buf_size: 80, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 80 bytes read from 1. | |
10674: Node 0 with 0 incoming edges at 0 and 1 outgoing edges at 55a97f44c680. | |
10674: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 20 bytes read from 1. | |
10674: Node 1 with 1 incoming edges at 55a97f44c6a0 and 0 outgoing edges at 0. | |
10674: read_chunk(): buf_size: 20, IOV_MAX: 1024 | |
10674: Try read from fd 1. | |
10674: Read succeeded: 20 bytes read from 1. | |
10674: read_message_block(): Read message block or solution from node 0 sent from file descriptor: stdin. | |
10674: pass_message_blocks(): next write via fd 1 to pid 10676 | |
10674: print_state(): pi[1].pid: 10676 | |
10674: initiator pid: 10674 | |
10674: pi[1].seen: 1 | |
10674: write: 1 | |
10676: establish_io_connections(): successful for node dgsh-tee at index 0 | |
10674: print_state(): pi[1].pid: 10676 | |
10674: run ready?: 0, seen times: 1 | |
10674: written: 1, nfds: 10674 | |
10674: **pass_message_blocks(): pi[1] is run ready | |
10674: print_state(): pi[0].pid: 0 | |
10676: free_graph_solution: freed 2 nodes. | |
10676: free_mb(): Freed message block. | |
10676: nin=0 nout=1 | |
10673: read_input_fds: Node 1 received file descriptor 3. | |
10676: New ofp assigned fd 1 | |
10673: write_output_fds(): for node at index 1 with 0 outgoing edges. | |
10673: establish_io_connections(): input fds: 1, output fds: 0 | |
10676: Input files | |
10676: 0x55a97f44c1a0: chain_last=1 (standard input) | |
10676: Output files | |
10676: 0x55a97f44c030: chain_last=1 ifp=0x55a97f44c1a0 (standard output) | |
10673: establish_io_connections(): closed STDIN, dup 3 returned 0 | |
10676: Check active file[standard output] pos_written=0 pos_to_write=0 | |
10673: establish_io_connections(): successful for node cat at index 1 | |
10673: free_graph_solution: freed 2 nodes. | |
10673: free_mb(): Freed message block. | |
10673: nin=1 nout=0 | |
10673: New ifp assigned fd 0 | |
10673: Input files | |
10673: 0x55e66dbfa030: chain_last=1 (standard input) | |
10673: Output files | |
10673: 0x55e66dbfa330: chain_last=1 ifp=0x55e66dbfa030 (standard output) | |
10673: Check active file[standard output] pos_written=0 pos_to_write=0 | |
10674: run ready?: 0, seen times: 0 | |
10674: written: 0, nfds: 0 | |
10674: print_state(): pi[1].pid: 10676 | |
10674: run ready?: 1, seen times: 1 | |
10674: written: 1, nfds: 1 | |
10674: pass_message_blocks(): conc leaves negotiation | |
10674: main(): Communicated the solution | |
10674: free_graph_solution: freed 2 nodes. | |
10674: free_mb(): Freed message block. | |
10674: conc with pid 10674 terminates normally | |
10673: | |
sink_write(): try write to file standard output | |
10673: memory_free: pool=0x55e66dbfa080 pos = 0, begin=0 end=0 | |
10673: Wrote 0 total bytes | |
10673: Buffers allocated: 0 Freed: 0 | |
10673: Allocated buffer 0 to 0x7f43a3088010 | |
10673: Source buffer(0) returns pool 0(0x7f43a3088010) o=0 l=1048576 a=0x7f43a3088010 | |
10673: Read 0 out of 1048576 bytes from standard input data=[] | |
10673: | |
sink_write(): try write to file standard output | |
10673: Sink buffer(0-0) returns pool 0((nil)) o=0 l=0 a=(nil) for input fd: standard input | |
10673: | |
sink_write(): sink buffer returned 0 bytes to write | |
10673: Wrote 0 out of 0 bytes for file standard output pos_written=0 data=[] | |
10673: memory_free: pool=0x55e66dbfa080 pos = 0, begin=0 end=0 | |
10673: Wrote 0 total bytes | |
10673: Retiring file standard output pos_written=pos_to_write=0 source_pos_read=0 | |
dgsh: line 1: 10674 Done dgsh-conc -o -n 1 | |
10675 | dgsh-conc -i 1 | |
10676 Terminated | cat | |
10672: Completed waiting for pid: 10676 | |
10672: exit switch for command: 4 | |
10672: exec_result: 143 | |
10672: last command exit value: 143 | |
10672: return exec_result: 143 | |
10672: exit switch for command: 6 | |
10672: exec_result: 143 | |
10672: last command exit value: 143 | |
10672: dgsh command returns 143 | |
10672: exit switch for command: 10 | |
10672: exec_result: 143 | |
10672: last command exit value: 143 | |
10672: last_command_exit_value: 143, s: 1 | |
10670: Completed waiting for pid: 10673 | |
10670: exit switch for command: 4 | |
10670: exec_result: 0 | |
10670: last command exit value: 0 | |
10670: return exec_result: 0 | |
10670: exit switch for command: 6 | |
10670: exec_result: 0 | |
10670: last command exit value: 0 | |
10670: exit shell: status 0 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment