On Tue, Jan 31, 2023 at 9:08 AM Flavio Cruz <flavioc...@gmail.com> wrote:
>
> When generating stubs, Mig will will take the vm_size_array_t and define the
> input request struct using rpc_vm_size_t since the size is variable. This 
> will turn cause a mismatch
> between types (vm_size_t* vs rpc_vm_size_t*). We could also ask Mig to produce
> a prototype by using rpc_vm_size_t*, however we would need to change the 
> implementation
> of the RPC to use rpc_* types anyway since we want to avoid another allocation
> of the array.

For someone as uninitiated as myself, could you please explain the
deal with these rpc_* types? (Or point me to some docs, if they
exist...)

I understand they are related to the x64 bringup, and possibly to
running 32-bit userland on a 64-bit kernel (or to support for 32-bit
tasks communicating with 64-bit tasks?). But how are they different to
plain vm_size_t etc, and when am I supposed to use one vs the other?
Does this only concern kernel land (i.e. GNU Mach) or the userland
too?

Thanks,
Sergey

Reply via email to