On Sat, Aug 25, 2018 at 08:54:53PM +0300, Kirill Kapranov wrote: > > For DT systems the dynamically allocated IDs start at the maximum > > positive ID and work down so in practice it is vanishingly unlikely that > > there will be a collision as idiomatic static DT IDs would be low > > integers. > > Yes, this algorithm seems really bullet-proof. However, it isn't actually > used now. The ID allocation algorithm using atomic_dec_return call had been > introduced 2006-01-08 as [1]. It was being used in the mainline kernel (with > some improvements) up to 2017-08-16, when it has been replaced with the > newer algorithm using Linux idr, accordingly [2]. Please include human readable descriptions of things like commits and issues being discussed in e-mail in your mails, this makes them much easier for humans to read especially when they have no internet access. I do frequently catch up on my mail on flights or while otherwise travelling so this is even more pressing for me than just being about making things a bit easier to read. > Since idr_alloc call works incrementally, the situation of a 'fixed' ID > squatting by a driver with 'dynamic ID' seems more than possible. > Therefore it would be justified to use a hardcoded constant > SPI_DYN_FIRST_BUS_NUM (that was introduced in [2] and eliminated in [3]), > but with a sufficiently greater value of the constant. Right, that clearly wasn't an intended effect, though - should be using the max of the big constant and the maximum static ID.
Attachment:
signature.asc
Description: PGP signature