On Wed, 1 Aug 2018 13:12:05 +0200 Halil Pasic <pasic@xxxxxxxxxxxxx> wrote: > On 07/27/2018 07:44 PM, Alex Williamson wrote: > > On Thu, 26 Jul 2018 21:54:29 +0200 > > Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote: > > ... > >> +The process for reserving an AP queue for use by a KVM guest is: > >> + > >> +* The vfio-ap driver during its initialization will perform the following: > >> + * Create the 'vfio_ap' root device - /sys/devices/virtual/misc/vfio_ap > >> + * Create the 'matrix' device in the 'vfio_ap' root > >> + * Register the matrix device with the device core > >> +* Register with the ap_bus for AP queue devices of type 10 devices (CEX4 and > >> + newer) and to provide the vfio_ap driver's probe and remove callback > >> + interfaces. The reason why older devices are not supported is because there > >> + are no systems available on which to test. > >> +* The admin needs to reserve the AP Queue for vfio_ap driver. This can be > >> + done by writing the AP adapter mask to /sys/bus/ap/apmask and the AP domain > >> + mask to /sys/bus/ap/aqmask. > >> + > >> + For example to reserve all the AP Queues on the system for vfio_ap driver: > >> + > >> + echo 0x0000000000000000000000000000000000000000000000000000000000000000 > /sys/bus/ap/apmask > >> + echo 0x0000000000000000000000000000000000000000000000000000000000000000 > /sys/bus/ap/aqmask > > > > And this is a reasonable user syntax? ;) > > > > We intend to provide tooling that makes this more human friendly. BTW > echo 0 > sys/bus/ap/apmask would also work -- and looks less scary. This should be reasonably configurable even without tooling. If you want to have any APQNs reserved to the default drivers, you'll end up counting positions, and with the mask lengths here, it's like configuring zfcp, only worse. See also my comments to the patch introducing the masks.