On Fri, 2019-10-18 at 16:01 +0200, Toke Høiland-Jørgensen wrote: > Right. Well in that case, let's try it. As long as we fail in a > reasonable way, we can just see if we run into anything that breaks? I > guess in this case that means rejecting requests from userspace if we > run out of IDs rather than silently wrapping and returning wrong data :) We can't reject due to how this works, but if the idr_alloc() fails then we'll just not give a status back to userspace later. > > > We could also split 5/11. That would support up to 32 ACK IDs, and we > > > can just truncate the airtime at 2048 us, which is not a big deal I'd > > > say. > > > > We can also play with the units of the airtime, e.g. making that a > > multiple of 2 or 4 us? Seems unlikely to matter much? > > Sure, that's a good point! Increments of 4us means we can fit 4ms is 10 > bits, leaving plenty of space for ACK IDs (hopefully). > > I'll rework the series to use that instead :) OK. There are two places that call idr_alloc() with a hardcoded limit of 0x10000, you'll have to fix those to have the right limit according to the bits you leave for the ACK id. johannes