Commit c00f94ad authored by Christophe JAILLET's avatar Christophe JAILLET Committed by Bjorn Helgaas
Browse files

x86/PCI: Use struct_size() in pirq_convert_irt_table()

Use struct_size() instead of hand-writing it. It is less verbose, more
robust and more informative.

Link: https://lore.kernel.org/r/00a5cc2cd322e7dea26579916ac6dda9c637aa57.1684518118.git.christophe.jaillet@wanadoo.fr


Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
parent 091f9f7f
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -136,14 +136,14 @@ static inline struct irq_routing_table *pirq_convert_irt_table(u8 *addr,
	if (ir->signature != IRT_SIGNATURE || !ir->used || ir->size < ir->used)
		return NULL;

	size = sizeof(*ir) + ir->used * sizeof(ir->slots[0]);
	size = struct_size(ir, slots, ir->used);
	if (size > limit - addr)
		return NULL;

	DBG(KERN_DEBUG "PCI: $IRT Interrupt Routing Table found at 0x%lx\n",
	    __pa(ir));

	size = sizeof(*rt) + ir->used * sizeof(rt->slots[0]);
	size = struct_size(rt, slots, ir->used);
	rt = kzalloc(size, GFP_KERNEL);
	if (!rt)
		return NULL;