[mkc2008] IPC - multiple send flexpages
frenzel at os.inf.tu-dresden.de
Mon Apr 6 11:38:46 CEST 2009
Jan Bierbaum(s3306700 at mail.inf.tu-dresden.de)@2009.04.04 20:44:40 +0200:
> In slides 7 and 17 multiple send flexpages are mentioned:
> 7 -> "Sender specifies one or more Send-flexpage"
> 17 -> "Copy data (direct and indirect strings) and map flexpages
> Does this mean you can actually have multiple flexpage data structures
> in one IPC (i.e. a message buffer descriptor), so that non-contiguous
> parts of the senders address space can be mapped with a single IPC?
> does this work? Are flexpages inside direct or indirect strings allowed?
The sender can specify a number direct strings that are interpreted as
flexpages in the kernel. If the m-bit is set in the send descriptor the
kernel tries to interpret the following strings as flexpages until the
end of the dwords is reached or an invalid fpage denoter is found.
> What if those flexpages overlap in the receivers address space?
I would say this is implementation specific and not mentioned in the
specification. Practically in Fiasco the situation is solved by
always doing overmapping. So the last one wins
More information about the mkc2008