> An RX batch can make a socket readable while the worker still holds its
> socket lock. Waking a blocking reader then only moves it to waiting for
> the same lock.
> 
> Record the existing low-watermark condition and notify once after
> release_sock(). Move the coalesced write-space notification after the
> unlock as well, since both callbacks wake sk_sleep(sk). Deliver
> write-space before data-ready and keep the lookup reference until both
> callbacks complete.
> 
> As with write-space, save the initial sk_data_ready callback and batch only
> while both saved callbacks remain installed. Sockets with replaced
> callbacks retain their per-packet behavior.
> 
> The existing psock-marker check also covers a concurrent sockmap attach:
> at most the already admitted packet completes on the native path, and the
> next packet ends the batch.
> 
> Signed-off-by: Jia Jia <[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


Reply via email to