On Wed, Nov 16, 2022 at 10:17:08AM +0200, Andy Shevchenko wrote: > On Tue, Nov 15, 2022 at 10:15:14PM +0100, Uwe Kleine-König wrote: > > alloc_pwms() only identified a free range of IDs and this range was marked > > as used only later by pwmchip_add(). Instead let alloc_pwms() already do > > the marking (which makes the function actually allocating the range and so > > justifies the function name). This way access to the allocated_pwms > > bitfield is limited to two functions only. > > This change is a bit fragile in a long term. Currently we know that we have > no points of error after alloc_pwms() in ->probe(), but if somebody misses > this in the future, we became to the case where bitmap might be exhausted > (kinda resource leakage). That is always the case for a function allocating resources. If you add an error path after the (previously) last allocation, you have to care for that. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |