• Martin KaFai Lau's avatar
    bpf: btf: Add BPF_OBJ_GET_INFO_BY_FD support to BTF fd · 60197cfb
    Martin KaFai Lau authored
    This patch adds BPF_OBJ_GET_INFO_BY_FD support to BTF fd.
    The original BTF data, which was used to create the BTF fd during
    the earlier BPF_BTF_LOAD call, will be returned.
    
    The userspace is expected to allocate buffer
    to info.info and the buffer size is set to info.info_len before
    calling BPF_OBJ_GET_INFO_BY_FD.
    
    The original BTF data is copied to the userspace buffer (info.info).
    Only upto the user's specified info.info_len will be copied.
    
    The original BTF data size is set to info.info_len.  The userspace
    needs to check if it is bigger than its allocated buffer size.
    If it is, the userspace should realloc with the kernel-returned
    info.info_len and call the BPF_OBJ_GET_INFO_BY_FD again.
    Signed-off-by: default avatarMartin KaFai Lau <kafai@fb.com>
    Acked-by: default avatarAlexei Starovoitov <ast@fb.com>
    Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
    60197cfb
btf.c 51.4 KB