Hi Matthew, On 11/10/18 8:41 AM, Matthew Wilcox wrote: > On Fri, Nov 09, 2018 at 03:11:31PM -0500, Waiman Long wrote: >> The mixing in of a sequence number into the IPC IDs is probably to >> avoid ID reuse in userspace as much as possible. With ipcmni_extend >> mode, the number of usable sequence numbers is greatly reduced leading >> to higher chance of ID reuse. >> >> To address this issue, we need to conserve the sequence number space >> as much as possible. Right now, the sequence number is incremented >> for every new ID created. In reality, we only need to increment the >> sequence number when one or more IDs have been removed previously to >> make sure that those IDs will not be reused when a new one is built. >> This is being done irrespective of the ipcmni mode. > That's not what I said. Increment the sequence ID when the cursor wraps, > not when there's been a deletion. Something like the attached patch? Unfortunately, idr_alloc_cyclic cannot be used, this creates some copy&paste from lib/idr.c to ipc/util.c [as potential replacement for patch 2 and 3 from the series] --     Manfred