[patch V2 04/33] genirq/msi: Add size info to struct msi_domain_info

Thomas Gleixner
2022-11-21T14:38:51Z

To allow proper range checking especially for dynamic allocations add a
size field to struct msi_domain_info. If the field is 0 then the size is
unknown or unlimited (up to MSI_MAX_INDEX) to provide backwards
compability.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
include/linux/msi.h | 2 ++
1 file changed, 2 insertions(+)

--- a/include/linux/msi.h
+++ b/include/linux/msi.h
@@ -414,6 +414,7 @@ struct msi_domain_ops {
* struct msi_domain_info - MSI interrupt domain data
* @flags: Flags to decribe features and capabilities
* @bus_token: The domain bus token
+ * @hwsize: The hardware table size (0 if unknown/unlimited)
* @ops: The callback data structure
* @chip: Optional: associated interrupt chip
* @chip_data: Optional: associated interrupt chip data
@@ -425,6 +426,7 @@ struct msi_domain_ops {
struct msi_domain_info {
u32 flags;
enum irq_domain_bus_token bus_token;
+ unsigned int hwsize;
struct msi_domain_ops *ops;
struct irq_chip *chip;
void *chip_data;