> The initial completion abstraction only added complete_all() and > wait_for_completion(). complete_all() marks the completion permanently > done, which makes a single Completion unsuitable for signalling the same > event repeatedly: once complete_all() has run, every subsequent > wait_for_completion() returns immediately without waiting. > > Add complete(), which wakes a single waiter and increments the internal > counter by one. Paired one-to-one with wait_for_completion(), it allows > the same completion to be reused across multiple cycles, e.g. to wait for > consecutive DMA transfers to finish. > > Acked-by: Gary Guo <[email protected]> > Signed-off-by: Maurice Hieronymus <[email protected]>
Sashiko has reviewed this patch and found no issues. It looks great! -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=4
