IRC channel logs

2022-01-13.log

back to list of logs

<luckyluke>biblio: I pushed my current branch here https://gitlab.com/luckyd/gnumach/-/tree/x86_64_boot
<slex>youpi: hello, i'm trying to run a client program from the hello server that waits for messages after setting 2 ports which one is the bootstrap port, (using task_set_bootstrap_port). is it possible without using the hurd or i need to implement something similar to the fork? For what i understood, starting a child task, is the only way to make the child know of the bootstrap port
<slex>or is thre another way for a spearato task to get the bootstrap port?
<damo22>not sure if this is related... task_get_special_port() ?
<damo22>see libmachdev
<slex>it get the ones you pass in the funciton, so until you don't know the parent task id it's hard to get them in child, if i understood
<luckyluke>biblio: btw, if I try to link the kernel at 0x4000000 (as for xen 64 bit) it seems to work, I'll do some more tests
<luckyluke>youpi: could it be that the reason to link at 0x40000000 on x86_64 is that with higher addresses there were linker errors like:
<luckyluke>../i386/i386at/model_dep.c:227:(.text+0x80): relocation truncated to fit: R_X86_64_32S against `.rodata.str1.1'
<luckyluke>I also changes ldscript, so I'm not sure if it's because of my changes
<luckyluke>s/changes/changed/
<curiosa>slex: did you try https://www.gnu.org/software/hurd/gnumach-doc/Task-Creation.html ?
<curiosa> https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_create.html
<curiosa>also curious: https://github.com/apple/darwin-xnu/blob/main/osfmk/kern/task.c#L937
<curiosa>because XNU replaced that by the BSD equivalent, I guess
<curiosa>well, no, they just complicated it https://github.com/apple/darwin-xnu/blob/main/osfmk/kern/task.c#L1293
<biblio>luckyluke: thanks I will start testing soon.
<biblio>luckyluke: ok noted