Re: [PATCH] locking/csd-lock: Report how long a stuck CSD lock took to recover

From: Dmitry Ilvokhin

Date: Fri Aug 07 2026 - 07:01:21 EST


On Wed, Aug 05, 2026 at 05:51:54AM -0700, Breno Leitao wrote:
> /*
> * Complain if too much time spent waiting. Note that only
> * the CSD_TYPE_SYNC/ASYNC types provide the destination CPU,
> * so waiting on other types gets much less information.
> */
> -static bool csd_lock_wait_toolong(call_single_data_t *csd, u64 ts0, u64 *ts1, int *bug_id, unsigned long *nmessages)
> +static bool csd_lock_wait_toolong(call_single_data_t *csd, u64 ts0, u64 *ts1, u64 *ts_resend,
> + int *bug_id, unsigned long *nmessages)

nit: csd_lock_wait_toolong() has too many arguments now to my liking.
This was already a bit awkward before, maybe it is time for a small
clean up. Does it make sense to pack timestamps, bug_id and nmessages
into a struct and pass it around instead?

That could go in as a separate cleanup ahead of this one.

Other than that, it looks reasonable to me.

With or without that:

Reviewed-by: Dmitry Ilvokhin <d@xxxxxxxxxxxx>