• Pavel Begunkov's avatar
    net: introduce managed frags infrastructure · 753f1ca4
    Pavel Begunkov authored
    Some users like io_uring can do page pinning more efficiently, so we
    want a way to delegate referencing to other subsystems. For that add
    a new flag called SKBFL_MANAGED_FRAG_REFS. When set, skb doesn't hold
    page references and upper layers are responsivle to managing page
    lifetime.
    
    It's allowed to convert skbs from managed to normal by calling
    skb_zcopy_downgrade_managed(). The function will take all needed
    page references and clear the flag. It's needed, for instance,
    to avoid mixing managed modes.
    Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    753f1ca4
skbuff.c 163 KB