On 2023-06-23 00:35:29 [-0700], John Johansen wrote: > > > iirc the difference with the earlier version, is in the put case. Where in > the earlier version, if there was lock contention the buffer would always > get pushed onto the percpu list. With some debug patches on top we > saw some degenerate cases where this would result in percpu lists that > had excessive buffers on them. > > So this version added a condition to force putting the buffer back > in to the global pool if the percpu list already has 2 buffers > cached on it. So none of the versions perform memory allocation/ deallocation in a preempt disabled section so it is fine from PREEMPT_RT point of view. Sebastian