Functionally LGTM. But I'm not sure if the discussion with Paolo is resolved, so here's a couple more nit picks:
On Tue, 29 Apr 2025 03:26:40 +0000 Mina Almasry wrote: > + case SCM_DEVMEM_DMABUF: > + if (cmsg->cmsg_len != CMSG_LEN(sizeof(u32))) > + return -EINVAL; > + sockc->dmabuf_id = *(u32 *)CMSG_DATA(cmsg); > + > break; The empty line before break is very odd. > + sockc = (struct sockcm_cookie){ .tsflags = READ_ONCE(sk->sk_tsflags), > + .dmabuf_id = 0 }; Too ugly to exist, either full init fits on a line or there needs to be a line break after {.