• Allocates system memory buffers.
  • [fuchsia.sysmem2/BufferCollection] is a connection directly from a participant to sysmem re. a buffer collection; often the buffer collection is shared with other participants which have their own BufferCollection client end(s) associated with the same buffer collection. In other words, an instance of the BufferCollection interface is a view of a buffer collection, not the buffer collection itself.
  • The sysmem implementation is consistent with a logical / conceptual model of allocation / logical allocation as follows:
  • A [fuchsia.sysmem2/BufferCollectionToken] is not a buffer collection, but rather is a way to identify a specific potential shared buffer collection, and a way to distribute that potential shared buffer collection to additional participants prior to the buffer collection allocating any buffers.
  • INACCESSIBLE is only for cases where there is no CPU access to the buffers.
  • Regardless of which error code, any client retries should be very limited in number, if any.
  • This protocol is the parent protocol for all nodes in the tree established by [fuchsia.sysmem2/BufferCollectionToken] creation and [fuchsia.sysmem2/BufferCollectionTokenGroup] creation, including fuchsia.sysmem2/BufferCollectionToken which have since been converted to a [fuchsia.sysmem2/BufferCollection] channel.



Type Aliases§