bpf: Support llvm-objcopy for vmlinux BTF
[platform/kernel/linux-rpi.git] / kernel / bpf / sysfs_btf.c
index 7ae5ddd..3b49577 100644 (file)
@@ -9,15 +9,15 @@
 #include <linux/sysfs.h>
 
 /* See scripts/link-vmlinux.sh, gen_btf() func for details */
-extern char __weak _binary__btf_vmlinux_bin_start[];
-extern char __weak _binary__btf_vmlinux_bin_end[];
+extern char __weak __start_BTF[];
+extern char __weak __stop_BTF[];
 
 static ssize_t
 btf_vmlinux_read(struct file *file, struct kobject *kobj,
                 struct bin_attribute *bin_attr,
                 char *buf, loff_t off, size_t len)
 {
-       memcpy(buf, _binary__btf_vmlinux_bin_start + off, len);
+       memcpy(buf, __start_BTF + off, len);
        return len;
 }
 
@@ -30,15 +30,14 @@ static struct kobject *btf_kobj;
 
 static int __init btf_vmlinux_init(void)
 {
-       if (!_binary__btf_vmlinux_bin_start)
+       if (!__start_BTF)
                return 0;
 
        btf_kobj = kobject_create_and_add("btf", kernel_kobj);
        if (!btf_kobj)
                return -ENOMEM;
 
-       bin_attr_btf_vmlinux.size = _binary__btf_vmlinux_bin_end -
-                                   _binary__btf_vmlinux_bin_start;
+       bin_attr_btf_vmlinux.size = __stop_BTF - __start_BTF;
 
        return sysfs_create_bin_file(btf_kobj, &bin_attr_btf_vmlinux);
 }