Shared data queue between dext and app (IOSharedDataQueueDispatchSource?)

I'm looking for a fast and efficient way for user-space to send I/O to my driver. One way I'd have hoped to do this, was through a shared memory ring-buffer.

In the WWDC19 presentation on System Extensions and DriverKit, at roughly 17:00, they mention an IOSharedDataQueueDispatchSource. This doesn't exist in the DriverKit API. An IODataQueueDispatchSource is available, but doesn't seem to be meant to be shared.

In the old IOKit framework, there are similar IOSharedDataQueue and IODataQueue, but they are unavailable in DriverKit.

So, what are my options for implementing a fast, efficient I/O path to my driver?

I've posted the same question on StackOverflow. Together with user pmdj, we've concluded that it isn't available in the API, and reported the issue to Apple.

https://stackoverflow.com/questions/77840032/sharing-a-ring-buffer-between-driver-and-user-space-in-driverkit

Shared data queue between dext and app (IOSharedDataQueueDispatchSource?)
 
 
Q