Re: [RFC dlm/next 7/9] dlm: drop scand kthread and use timers

Alexander Aring
2024-04-11T14:00:29Z

Hi,

On Wed, Apr 10, 2024 at 9:49 AM Alexander Aring <aahringo@redhat.com> wrote:
>
> Currently the scand kthread acts like a garbage collection for expired
> rsbs on toss list to clean them up after a certain timeout. It triggers
> every couple of seconds and iterates over the toss list while holding
> ls_rsbtbl_lock for the whole hash bucket iteration. To reduce the amount
> of holding the ls_rsbtbl_lock time we handle free of cached rsbs (tossed
> rsbs) on a per rsb timer. If it expires the rsb deletes itseld out of
> rsb data structures. Addtional the timer can run on any cpu instead of
> scand that was only running on one cpu, so there should be a performance
> speedup handling such freeing of resources.
>

I currently try to work on a per lockspace timer that gets rearmed
when the next rsb is expired instead of spamming the timer subsystems
with a lot of timers.

That has also the advantage to simply shutdown the per ls timer,
instead iterating over all timers which is done by some flags in this
version.

- Alex