[PATCH v4 01/10] driver core: bus: add irq_get_affinity callback to bus_type
Ming Lei
ming.lei at redhat.com
Wed Nov 13 17:45:27 PST 2024
On Wed, Nov 13, 2024 at 03:26:15PM +0100, Daniel Wagner wrote:
> Introducing a callback in struct bus_type so that a subsystem
> can hook up the getters directly. This approach avoids exposing
> random getters in any subsystems APIs.
>
> Acked-by: Bjorn Helgaas <bhelgaas at google.com>
> Reviewed-by: Christoph Hellwig <hch at lst.de>
> Reviewed-by: Hannes Reinecke <hare at suse.de>
> Signed-off-by: Daniel Wagner <wagi at kernel.org>
> ---
> include/linux/device/bus.h | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/include/linux/device/bus.h b/include/linux/device/bus.h
> index cdc4757217f9bb4b36b5c3b8a48bab45737e44c5..b18658bce2c3819fc1cbeb38fb98391d56ec3317 100644
> --- a/include/linux/device/bus.h
> +++ b/include/linux/device/bus.h
> @@ -48,6 +48,7 @@ struct fwnode_handle;
> * will never get called until they do.
> * @remove: Called when a device removed from this bus.
> * @shutdown: Called at shut-down time to quiesce the device.
> + * @irq_get_affinity: Get IRQ affinity mask for the device on this bus.
> *
> * @online: Called to put the device back online (after offlining it).
> * @offline: Called to put the device offline for hot-removal. May fail.
> @@ -87,6 +88,8 @@ struct bus_type {
> void (*sync_state)(struct device *dev);
> void (*remove)(struct device *dev);
> void (*shutdown)(struct device *dev);
> + const struct cpumask *(*irq_get_affinity)(struct device *dev,
> + unsigned int irq_vec);
>
> int (*online)(struct device *dev);
> int (*offline)(struct device *dev);
>
Looks one nice abstraction,
Reviewed-by: Ming Lei <ming.lei at redhat.com>
--
Ming
More information about the Linux-nvme
mailing list