10 Jul
2023
10 Jul
'23
7:09 p.m.
On Mon, Jul 10, 2023 at 06:49:19PM +0300, Andy Shevchenko wrote:
Refactor spi_register_controller() to drop duplicate IDR allocation. Instead of if-else-if branching use two sequential if:s, which allows to re-use the logic of IDR allocation in all cases.
For legibility this should have been split into a separate factoring out of the shared code and rewriting of the logic, that'd make it trivial to review.
mutex_lock(&board_lock);
id = idr_alloc(&spi_master_idr, ctlr, first_dynamic,
0, GFP_KERNEL);
mutex_unlock(&board_lock);
if (WARN(id < 0, "couldn't get idr"))
return id;
ctlr->bus_num = id;
status = spi_controller_id_alloc(ctlr, first_dynamic, 0);
if (status)
return status;
The original does not do the remapping of return codes that the previous two copies do...