Re: [PATCH v13 12/15] s390/zcrypt: Notify driver on config changed and scan complete callbacks

Halil Pasic
2021-01-12T16:59:42Z

On Tue, 22 Dec 2020 20:16:03 -0500
Tony Krowiak <akrowiak@linux.ibm.com> wrote:

> This patch intruduces an extension to the ap bus to notify device drivers
> when the host AP configuration changes - i.e., adapters, domains or
> control domains are added or removed. To that end, two new callbacks are
> introduced for AP device drivers:
>
> void (*on_config_changed)(struct ap_config_info *new_config_info,
> struct ap_config_info *old_config_info);
>
> This callback is invoked at the start of the AP bus scan
> function when it determines that the host AP configuration information
> has changed since the previous scan. This is done by storing
> an old and current QCI info struct and comparing them. If there is any
> difference, the callback is invoked.
>
> Note that when the AP bus scan detects that AP adapters, domains or
> control domains have been removed from the host's AP configuration, it
> will remove the associated devices from the AP bus subsystem's device
> model. This callback gives the device driver a chance to respond to
> the removal of the AP devices from the host configuration prior to
> calling the device driver's remove callback. The primary purpose of
> this callback is to allow the vfio_ap driver to do a bulk unplug of
> all affected adapters, domains and control domains from affected
> guests rather than unplugging them one at a time when the remove
> callback is invoked.
>
> void (*on_scan_complete)(struct ap_config_info *new_config_info,
> struct ap_config_info *old_config_info);
>
> The on_scan_complete callback is invoked after the ap bus scan is
> complete if the host AP configuration data has changed.
>
> Note that when the AP bus scan detects that adapters, domains or
> control domains have been added to the host's configuration, it will
> create new devices in the AP bus subsystem's device model. The primary
> purpose of this callback is to allow the vfio_ap driver to do a bulk
> plug of all affected adapters, domains and control domains into
> affected guests rather than plugging them one at a time when the
> probe callback is invoked.
>
> Please note that changes to the apmask and aqmask do not trigger
> these two callbacks since the bus scan function is not invoked by changes
> to those masks.
>
> Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
> Signed-off-by: Tony Krowiak <akrowiak@linux.ibm.com>

Reviewed-by: Halil Pasic <pasic@linux.ibm.com>

[..]