Re: [PATCH] soundwire: bus: fix off-by-one when allocating slave IDs
From: Charles Keepax
Date: Mon Jan 12 2026 - 04:56:36 EST
On Sat, Jan 10, 2026 at 12:19:58PM -0800, Harshit Mogalapalli wrote:
> ida_alloc_max() interprets its max argument as inclusive.
>
> Using SDW_FW_MAX_DEVICES(16) therefore allows an ID of 16 to be
> allocated, but the IRQ domain created for the bus is sized for IDs
> 0-15. If 16 is returned, irq_create_mapping() fails and the driver
> ends up with an invalid IRQ mapping.
>
> Limit the allocation to 0-15 by passing SDW_FW_MAX_DEVICES - 1.
>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Closes: https://lore.kernel.org/r/202512240450.hlDH3nCs-lkp@xxxxxxxxx/
> Fixes: aab12022b076 ("soundwire: bus: Add internal slave ID and use for IRQs")
> Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@xxxxxxxxxx>
> ---
Reviewed-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>
Thanks,
Charles