On Mon, 12 Aug 2024 20:10:39 +0100 Pavel Begunkov wrote:
- Drivers need to be able to say "I support unreadable netmem".
Failure to report unreadable netmem support should cause the netlink API to fail when the user tries to bind dmabuf/io uring memory.
- Drivers need to be able to say "I want a header pool (with readable
netmem)" or "I want a data pool (potentially with unreadable netmem)".
Pavel is suggesting implementing both of these in 2 different flags.
Jakub is suggesting implementing both with 1 flag which says "I can support unreadable netmem for this pool" , and guarding against #1 with a refcount check to detect if a dmabuf pool should have been created but wasn't.
That would be iffy IIUC, but I think Jakub just explicitly said that the refcount trick was just for debugging purposes and not for gauging errors like "providers are not supported by the driver".
"Yup, the refcount (now: check of the page pool list) was meant as a WARN_ONCE() to catch bad drivers."
Sorry, insufficient caffeine level in the morning. We can't WARN_ONCE(), indeed.