modify
diff --git a/executor/defs.h b/executor/defs.h
index f1ce356..10c220c 100644
--- a/executor/defs.h
+++ b/executor/defs.h
@@ -60,7 +60,7 @@
 
 #if GOARCH_386
 #define GOARCH "386"
-#define SYZ_REVISION "07a706f34916e579028c3b5930f05eab20aaa671"
+#define SYZ_REVISION "45e46ae0278c937d528d5af7a461c9046ebefcc3"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
@@ -70,7 +70,7 @@
 
 #if GOARCH_amd64
 #define GOARCH "amd64"
-#define SYZ_REVISION "a209771bec315f9e71a9b5957a5359b90a040b8c"
+#define SYZ_REVISION "dc61fd66531f0043c73339ba58ff99b551494491"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
@@ -80,7 +80,7 @@
 
 #if GOARCH_arm
 #define GOARCH "arm"
-#define SYZ_REVISION "5ed17d88ce7725299f20537ebc47c832c029096b"
+#define SYZ_REVISION "260cff66e522ba7ca01fcc42090b60105db9c5f5"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
@@ -90,7 +90,7 @@
 
 #if GOARCH_arm64
 #define GOARCH "arm64"
-#define SYZ_REVISION "075d035566e90160990e4623818e1277e08f05c1"
+#define SYZ_REVISION "29f7fbe2866a8e634b080f5c27c41e7ee1c78022"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
@@ -100,7 +100,7 @@
 
 #if GOARCH_ppc64le
 #define GOARCH "ppc64le"
-#define SYZ_REVISION "3a82f74533ed5185ce73209a8c128a9c0ece3128"
+#define SYZ_REVISION "993957a75ed5c6bb4bf511b222f5a6fde7b8bd26"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
diff --git a/sys/linux/bpf.txt b/sys/linux/bpf.txt
index cffaa46..195b647 100644
--- a/sys/linux/bpf.txt
+++ b/sys/linux/bpf.txt
@@ -44,14 +44,18 @@
 bpf$BPF_MAP_LOOKUP_AND_DELETE_ELEM(cmd const[BPF_MAP_LOOKUP_AND_DELETE_ELEM], arg ptr[in, bpf_map_lookup_arg], size len[arg])
 
 bpf_map_create_arg {
-	type		flags[bpf_map_type, int32]
-	ksize		int32
-	vsize		int32
-	max		int32
-	flags		flags[map_flags, int32]
-	inner		fd_bpf_map[opt]
-	node		int32
-	map_name	array[const[0, int8], BPF_OBJ_NAME_LEN]
+	type			flags[bpf_map_type, int32]
+	ksize			int32
+	vsize			int32
+	max			int32
+	flags			flags[map_flags, int32]
+	inner			fd_bpf_map[opt]
+	node			int32
+	map_name		array[const[0, int8], BPF_OBJ_NAME_LEN]
+	map_ifindex		ifindex[opt]
+	btf_fd			fd_btf
+	btf_key_type_id		int32
+	btf_value_type_id	int32
 }
 
 bpf_map_get_fd_by_id_arg {
@@ -84,6 +88,9 @@
 	next	ptr64[out, array[int8]]
 }
 
+define BPF_LINE_INFO_SIZE	sizeof(struct bpf_line_info)
+define BPF_FUNC_INFO_SIZE	sizeof(struct bpf_func_info)
+
 bpf_prog {
 	type			flags[bpf_prog_type, int32]
 	ninsn			bytesize8[insns, int32]
@@ -97,11 +104,30 @@
 	prog_name		array[const[0, int8], BPF_OBJ_NAME_LEN]
 	prog_ifindex		ifindex[opt]
 	expected_attach_type	flags[bpf_attach_type, int32]
+	btf_fd			fd_btf
+	func_info_rec_size	const[BPF_FUNC_INFO_SIZE, int32]
+	func_info		ptr64[in, bpf_func_info]
+	func_info_cnt		len[func_info, int32]
+	line_info_rec_size	const[BPF_LINE_INFO_SIZE, int32]
+	line_info		ptr64[in, bpf_line_info]
+	line_info_cnt		len[line_info, int32]
 }
 
 bpf_licenses = "GPL", "syzkaller"
 bpf_kern_version = 0x40f00, 0x41000, 0x41100
 
+bpf_func_info {
+	insn_off	int32
+	type_id		int32
+}
+
+bpf_line_info {
+	insn_off	int32
+	file_name_off	int32
+	line_off	int32
+	line_col	int32
+}
+
 bpf_instructions [
 	raw	array[bpf_insn]
 	framed	bpf_framed_program
@@ -313,18 +339,38 @@
 }
 
 bpf_prog_info {
-	type			int32
-	id			bpf_prog_id
-	tag			int64
-	jited_prog_len		int32
-	xlated_prog_len		int32
-	jited_prog_insns	int64
-	xlated_prog_insns	int64
-	load_time		int64
-	created_by_uid		int32
-	nr_map_ids		int32
-	map_ids			int64
-	name			array[int8, BPF_OBJ_NAME_LEN]
+	type				int32
+	id				bpf_prog_id
+	tag				int64
+	jited_prog_len			int32
+	xlated_prog_len			int32
+	jited_prog_insns		int64
+	xlated_prog_insns		int64
+	load_time			int64
+	created_by_uid			int32
+	nr_map_ids			int32
+	map_ids				int64
+	name				array[int8, BPF_OBJ_NAME_LEN]
+	ifindex				int32
+	gpl_compatible			int32:1
+	netns_dev			int64
+	netns_ino			int64
+	nr_jited_ksyms			int32
+	nr_jited_func_lens		int32
+	jited_ksyms			ptr64[in, int64]
+	jited_func_lens			int64
+	btf_id				int32
+	func_info_rec_size		int32
+	func_info			ptr64[in, bpf_func_info]
+	nr_func_info			int32
+	nr_line_info			int32
+	line_info			ptr64[in, bpf_line_info]
+	jited_line_info			ptr64[in, int64]
+	nr_jited_line_info		int32
+	line_info_rec_size		int32
+	jited_line_info_rec_size	int32
+	nr_prog_tags			int32
+	prog_tags			ptr64[in, int64]
 } [align_8]
 
 bpf_get_map_info_arg {
diff --git a/sys/linux/bpf_386.const b/sys/linux/bpf_386.const
index 75be7bd..25db2d4 100644
--- a/sys/linux/bpf_386.const
+++ b/sys/linux/bpf_386.const
@@ -26,6 +26,7 @@
 BPF_END0 = 13
 BPF_EXIST = 2
 BPF_EXIT0 = 9
+BPF_FUNC_INFO_SIZE = 8
 BPF_F_ALLOW_MULTI = 2
 BPF_F_ALLOW_OVERRIDE = 1
 BPF_F_NO_COMMON_LRU = 2
@@ -54,6 +55,7 @@
 BPF_JSLT0 = 12
 BPF_LD = 0
 BPF_LDX = 1
+BPF_LINE_INFO_SIZE = 16
 BPF_LSH0 = 6
 BPF_MAP_CREATE = 0
 BPF_MAP_DELETE_ELEM = 3
diff --git a/sys/linux/bpf_amd64.const b/sys/linux/bpf_amd64.const
index 5bd2c44..3b4d071 100644
--- a/sys/linux/bpf_amd64.const
+++ b/sys/linux/bpf_amd64.const
@@ -26,6 +26,7 @@
 BPF_END0 = 13
 BPF_EXIST = 2
 BPF_EXIT0 = 9
+BPF_FUNC_INFO_SIZE = 8
 BPF_F_ALLOW_MULTI = 2
 BPF_F_ALLOW_OVERRIDE = 1
 BPF_F_NO_COMMON_LRU = 2
@@ -54,6 +55,7 @@
 BPF_JSLT0 = 12
 BPF_LD = 0
 BPF_LDX = 1
+BPF_LINE_INFO_SIZE = 16
 BPF_LSH0 = 6
 BPF_MAP_CREATE = 0
 BPF_MAP_DELETE_ELEM = 3
diff --git a/sys/linux/bpf_arm.const b/sys/linux/bpf_arm.const
index 5829453..bae4e7c 100644
--- a/sys/linux/bpf_arm.const
+++ b/sys/linux/bpf_arm.const
@@ -26,6 +26,7 @@
 BPF_END0 = 13
 BPF_EXIST = 2
 BPF_EXIT0 = 9
+BPF_FUNC_INFO_SIZE = 8
 BPF_F_ALLOW_MULTI = 2
 BPF_F_ALLOW_OVERRIDE = 1
 BPF_F_NO_COMMON_LRU = 2
@@ -54,6 +55,7 @@
 BPF_JSLT0 = 12
 BPF_LD = 0
 BPF_LDX = 1
+BPF_LINE_INFO_SIZE = 16
 BPF_LSH0 = 6
 BPF_MAP_CREATE = 0
 BPF_MAP_DELETE_ELEM = 3
diff --git a/sys/linux/bpf_arm64.const b/sys/linux/bpf_arm64.const
index 83b65b4..25cdbcb 100644
--- a/sys/linux/bpf_arm64.const
+++ b/sys/linux/bpf_arm64.const
@@ -26,6 +26,7 @@
 BPF_END0 = 13
 BPF_EXIST = 2
 BPF_EXIT0 = 9
+BPF_FUNC_INFO_SIZE = 8
 BPF_F_ALLOW_MULTI = 2
 BPF_F_ALLOW_OVERRIDE = 1
 BPF_F_NO_COMMON_LRU = 2
@@ -54,6 +55,7 @@
 BPF_JSLT0 = 12
 BPF_LD = 0
 BPF_LDX = 1
+BPF_LINE_INFO_SIZE = 16
 BPF_LSH0 = 6
 BPF_MAP_CREATE = 0
 BPF_MAP_DELETE_ELEM = 3
diff --git a/sys/linux/bpf_ppc64le.const b/sys/linux/bpf_ppc64le.const
index c18335f..8db9860 100644
--- a/sys/linux/bpf_ppc64le.const
+++ b/sys/linux/bpf_ppc64le.const
@@ -26,6 +26,7 @@
 BPF_END0 = 13
 BPF_EXIST = 2
 BPF_EXIT0 = 9
+BPF_FUNC_INFO_SIZE = 8
 BPF_F_ALLOW_MULTI = 2
 BPF_F_ALLOW_OVERRIDE = 1
 BPF_F_NO_COMMON_LRU = 2
@@ -54,6 +55,7 @@
 BPF_JSLT0 = 12
 BPF_LD = 0
 BPF_LDX = 1
+BPF_LINE_INFO_SIZE = 16
 BPF_LSH0 = 6
 BPF_MAP_CREATE = 0
 BPF_MAP_DELETE_ELEM = 3
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 6a9dd69..2b69282 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -1046,6 +1046,10 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "body", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"},
 	}}},
+	{Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}},
+	}}},
 	{Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "info"},
@@ -1143,7 +1147,13 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "raw", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"},
 	}}},
-	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 44}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}},
+	}}},
+	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 60}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_map_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 7, 8, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ksize", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "vsize", TypeSize: 4}}},
@@ -1152,6 +1162,10 @@
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "inner", TypeSize: 4, IsOptional: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}},
 	}}},
 	{Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}},
@@ -1209,7 +1223,7 @@
 	{Key: StructKey{Name: "bpf_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_options", IsVarlen: true}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "fs_opt[\"mode\", fmt[oct, int32]]"}, FldName: "mode"},
 	}}},
-	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 72}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 112}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_prog_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize8", FldName: "ninsn", TypeSize: 4}}, BitSize: 64, Buf: "insns"},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "insns", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "bpf_instructions"}}},
@@ -1222,8 +1236,16 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}},
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Buf: "func_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "line_info_rec_size", TypeSize: 4}}, Val: 16},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "line_info_cnt", TypeSize: 4}}, Buf: "line_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
 	}}},
-	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 80, ArgDir: 1}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 192, ArgDir: 1}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 1}}},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_prog_id", FldName: "id", TypeSize: 4, ArgDir: 1}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "tag", TypeSize: 8, ArgDir: 1}}},
@@ -1236,6 +1258,26 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_map_ids", TypeSize: 4, ArgDir: 1}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "map_ids", TypeSize: 8, ArgDir: 1}}},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ifindex", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "gpl_compatible", TypeSize: 4, ArgDir: 1}, BitfieldLen: 1}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_dev", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_ino", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_ksyms", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_line_info", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_line_info", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_line_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "jited_line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_prog_tags", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "prog_tags", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
 	}, AlignAttr: 8}},
 	{Key: StructKey{Name: "bpf_prog_query"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_query", TypeSize: 32}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}},
@@ -14826,7 +14868,7 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 43},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "ifla_xdp_policy"}}},
 	}, AlignAttr: 4}},
-	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 76}, Fields: []Type{
+	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 116}, Fields: []Type{
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Buf: "parent"},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
 		&StructType{Key: StructKey{Name: "bpf_prog"}, FldName: "payload"},
@@ -42309,6 +42351,7 @@
 	{Name: "BPF_END0", Value: 13},
 	{Name: "BPF_EXIST", Value: 2},
 	{Name: "BPF_EXIT0", Value: 9},
+	{Name: "BPF_FUNC_INFO_SIZE", Value: 8},
 	{Name: "BPF_F_ALLOW_MULTI", Value: 2},
 	{Name: "BPF_F_ALLOW_OVERRIDE", Value: 1},
 	{Name: "BPF_F_NO_COMMON_LRU", Value: 2},
@@ -42337,6 +42380,7 @@
 	{Name: "BPF_JSLT0", Value: 12},
 	{Name: "BPF_LD"},
 	{Name: "BPF_LDX", Value: 1},
+	{Name: "BPF_LINE_INFO_SIZE", Value: 16},
 	{Name: "BPF_LSH0", Value: 6},
 	{Name: "BPF_MAP_CREATE"},
 	{Name: "BPF_MAP_DELETE_ELEM", Value: 3},
@@ -49346,4 +49390,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_386 = "07a706f34916e579028c3b5930f05eab20aaa671"
+const revision_386 = "45e46ae0278c937d528d5af7a461c9046ebefcc3"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 1d201d2..5dd6910 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -1049,6 +1049,10 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "body", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"},
 	}}},
+	{Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}},
+	}}},
 	{Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "info"},
@@ -1146,7 +1150,13 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "raw", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"},
 	}}},
-	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 44}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}},
+	}}},
+	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 60}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_map_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 7, 8, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ksize", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "vsize", TypeSize: 4}}},
@@ -1155,6 +1165,10 @@
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "inner", TypeSize: 4, IsOptional: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}},
 	}}},
 	{Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}},
@@ -1212,7 +1226,7 @@
 	{Key: StructKey{Name: "bpf_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_options", IsVarlen: true}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "fs_opt[\"mode\", fmt[oct, int32]]"}, FldName: "mode"},
 	}}},
-	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 72}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 112}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_prog_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize8", FldName: "ninsn", TypeSize: 4}}, BitSize: 64, Buf: "insns"},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "insns", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "bpf_instructions"}}},
@@ -1225,8 +1239,16 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}},
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Buf: "func_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "line_info_rec_size", TypeSize: 4}}, Val: 16},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "line_info_cnt", TypeSize: 4}}, Buf: "line_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
 	}}},
-	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 80, ArgDir: 1}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 192, ArgDir: 1}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 1}}},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_prog_id", FldName: "id", TypeSize: 4, ArgDir: 1}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "tag", TypeSize: 8, ArgDir: 1}}},
@@ -1239,6 +1261,26 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_map_ids", TypeSize: 4, ArgDir: 1}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "map_ids", TypeSize: 8, ArgDir: 1}}},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ifindex", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "gpl_compatible", TypeSize: 4, ArgDir: 1}, BitfieldLen: 1}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_dev", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_ino", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_ksyms", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_line_info", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_line_info", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_line_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "jited_line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_prog_tags", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "prog_tags", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
 	}, AlignAttr: 8}},
 	{Key: StructKey{Name: "bpf_prog_query"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_query", TypeSize: 32}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}},
@@ -15104,7 +15146,7 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 43},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "ifla_xdp_policy"}}},
 	}, AlignAttr: 4}},
-	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 76}, Fields: []Type{
+	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 116}, Fields: []Type{
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Buf: "parent"},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
 		&StructType{Key: StructKey{Name: "bpf_prog"}, FldName: "payload"},
@@ -42811,6 +42853,7 @@
 	{Name: "BPF_END0", Value: 13},
 	{Name: "BPF_EXIST", Value: 2},
 	{Name: "BPF_EXIT0", Value: 9},
+	{Name: "BPF_FUNC_INFO_SIZE", Value: 8},
 	{Name: "BPF_F_ALLOW_MULTI", Value: 2},
 	{Name: "BPF_F_ALLOW_OVERRIDE", Value: 1},
 	{Name: "BPF_F_NO_COMMON_LRU", Value: 2},
@@ -42839,6 +42882,7 @@
 	{Name: "BPF_JSLT0", Value: 12},
 	{Name: "BPF_LD"},
 	{Name: "BPF_LDX", Value: 1},
+	{Name: "BPF_LINE_INFO_SIZE", Value: 16},
 	{Name: "BPF_LSH0", Value: 6},
 	{Name: "BPF_MAP_CREATE"},
 	{Name: "BPF_MAP_DELETE_ELEM", Value: 3},
@@ -49863,4 +49907,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_amd64 = "a209771bec315f9e71a9b5957a5359b90a040b8c"
+const revision_amd64 = "dc61fd66531f0043c73339ba58ff99b551494491"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 2bd5b66..94fbebc 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -1046,6 +1046,10 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "body", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"},
 	}}},
+	{Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}},
+	}}},
 	{Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "info"},
@@ -1143,7 +1147,13 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "raw", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"},
 	}}},
-	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 44}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}},
+	}}},
+	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 60}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_map_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 7, 8, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ksize", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "vsize", TypeSize: 4}}},
@@ -1152,6 +1162,10 @@
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "inner", TypeSize: 4, IsOptional: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}},
 	}}},
 	{Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}},
@@ -1209,7 +1223,7 @@
 	{Key: StructKey{Name: "bpf_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_options", IsVarlen: true}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "fs_opt[\"mode\", fmt[oct, int32]]"}, FldName: "mode"},
 	}}},
-	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 72}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 112}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_prog_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize8", FldName: "ninsn", TypeSize: 4}}, BitSize: 64, Buf: "insns"},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "insns", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "bpf_instructions"}}},
@@ -1222,8 +1236,16 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}},
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Buf: "func_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "line_info_rec_size", TypeSize: 4}}, Val: 16},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "line_info_cnt", TypeSize: 4}}, Buf: "line_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
 	}}},
-	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 80, ArgDir: 1}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 192, ArgDir: 1}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 1}}},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_prog_id", FldName: "id", TypeSize: 4, ArgDir: 1}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "tag", TypeSize: 8, ArgDir: 1}}},
@@ -1236,6 +1258,26 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_map_ids", TypeSize: 4, ArgDir: 1}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "map_ids", TypeSize: 8, ArgDir: 1}}},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ifindex", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "gpl_compatible", TypeSize: 4, ArgDir: 1}, BitfieldLen: 1}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_dev", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_ino", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_ksyms", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_line_info", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_line_info", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_line_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "jited_line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_prog_tags", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "prog_tags", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
 	}, AlignAttr: 8}},
 	{Key: StructKey{Name: "bpf_prog_query"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_query", TypeSize: 32}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}},
@@ -14643,7 +14685,7 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 43},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "ifla_xdp_policy"}}},
 	}, AlignAttr: 4}},
-	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 76}, Fields: []Type{
+	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 116}, Fields: []Type{
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Buf: "parent"},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
 		&StructType{Key: StructKey{Name: "bpf_prog"}, FldName: "payload"},
@@ -41949,6 +41991,7 @@
 	{Name: "BPF_END0", Value: 13},
 	{Name: "BPF_EXIST", Value: 2},
 	{Name: "BPF_EXIT0", Value: 9},
+	{Name: "BPF_FUNC_INFO_SIZE", Value: 8},
 	{Name: "BPF_F_ALLOW_MULTI", Value: 2},
 	{Name: "BPF_F_ALLOW_OVERRIDE", Value: 1},
 	{Name: "BPF_F_NO_COMMON_LRU", Value: 2},
@@ -41977,6 +42020,7 @@
 	{Name: "BPF_JSLT0", Value: 12},
 	{Name: "BPF_LD"},
 	{Name: "BPF_LDX", Value: 1},
+	{Name: "BPF_LINE_INFO_SIZE", Value: 16},
 	{Name: "BPF_LSH0", Value: 6},
 	{Name: "BPF_MAP_CREATE"},
 	{Name: "BPF_MAP_DELETE_ELEM", Value: 3},
@@ -48923,4 +48967,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_arm = "5ed17d88ce7725299f20537ebc47c832c029096b"
+const revision_arm = "260cff66e522ba7ca01fcc42090b60105db9c5f5"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index ec2e73a..309a70a 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -1049,6 +1049,10 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "body", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"},
 	}}},
+	{Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}},
+	}}},
 	{Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "info"},
@@ -1146,7 +1150,13 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "raw", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"},
 	}}},
-	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 44}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}},
+	}}},
+	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 60}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_map_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 7, 8, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ksize", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "vsize", TypeSize: 4}}},
@@ -1155,6 +1165,10 @@
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "inner", TypeSize: 4, IsOptional: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}},
 	}}},
 	{Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}},
@@ -1212,7 +1226,7 @@
 	{Key: StructKey{Name: "bpf_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_options", IsVarlen: true}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "fs_opt[\"mode\", fmt[oct, int32]]"}, FldName: "mode"},
 	}}},
-	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 72}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 112}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_prog_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize8", FldName: "ninsn", TypeSize: 4}}, BitSize: 64, Buf: "insns"},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "insns", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "bpf_instructions"}}},
@@ -1225,8 +1239,16 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}},
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Buf: "func_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "line_info_rec_size", TypeSize: 4}}, Val: 16},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "line_info_cnt", TypeSize: 4}}, Buf: "line_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
 	}}},
-	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 80, ArgDir: 1}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 192, ArgDir: 1}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 1}}},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_prog_id", FldName: "id", TypeSize: 4, ArgDir: 1}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "tag", TypeSize: 8, ArgDir: 1}}},
@@ -1239,6 +1261,26 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_map_ids", TypeSize: 4, ArgDir: 1}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "map_ids", TypeSize: 8, ArgDir: 1}}},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ifindex", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "gpl_compatible", TypeSize: 4, ArgDir: 1}, BitfieldLen: 1}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_dev", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_ino", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_ksyms", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_line_info", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_line_info", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_line_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "jited_line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_prog_tags", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "prog_tags", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
 	}, AlignAttr: 8}},
 	{Key: StructKey{Name: "bpf_prog_query"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_query", TypeSize: 32}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}},
@@ -14921,7 +14963,7 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 43},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "ifla_xdp_policy"}}},
 	}, AlignAttr: 4}},
-	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 76}, Fields: []Type{
+	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 116}, Fields: []Type{
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Buf: "parent"},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
 		&StructType{Key: StructKey{Name: "bpf_prog"}, FldName: "payload"},
@@ -42257,6 +42299,7 @@
 	{Name: "BPF_END0", Value: 13},
 	{Name: "BPF_EXIST", Value: 2},
 	{Name: "BPF_EXIT0", Value: 9},
+	{Name: "BPF_FUNC_INFO_SIZE", Value: 8},
 	{Name: "BPF_F_ALLOW_MULTI", Value: 2},
 	{Name: "BPF_F_ALLOW_OVERRIDE", Value: 1},
 	{Name: "BPF_F_NO_COMMON_LRU", Value: 2},
@@ -42285,6 +42328,7 @@
 	{Name: "BPF_JSLT0", Value: 12},
 	{Name: "BPF_LD"},
 	{Name: "BPF_LDX", Value: 1},
+	{Name: "BPF_LINE_INFO_SIZE", Value: 16},
 	{Name: "BPF_LSH0", Value: 6},
 	{Name: "BPF_MAP_CREATE"},
 	{Name: "BPF_MAP_DELETE_ELEM", Value: 3},
@@ -49213,4 +49257,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_arm64 = "075d035566e90160990e4623818e1277e08f05c1"
+const revision_arm64 = "29f7fbe2866a8e634b080f5c27c41e7ee1c78022"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index 8504f30..3722f16 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -1048,6 +1048,10 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "body", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"},
 	}}},
+	{Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}},
+	}}},
 	{Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "info"},
@@ -1145,7 +1149,13 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "raw", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "bpf_insn"}}},
 		&StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"},
 	}}},
-	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 44}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}},
+	}}},
+	{Key: StructKey{Name: "bpf_map_create_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_create_arg", TypeSize: 60}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_map_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 7, 8, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ksize", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "vsize", TypeSize: 4}}},
@@ -1154,6 +1164,10 @@
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "inner", TypeSize: 4, IsOptional: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}},
 	}}},
 	{Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}},
@@ -1211,7 +1225,7 @@
 	{Key: StructKey{Name: "bpf_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_options", IsVarlen: true}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "fs_opt[\"mode\", fmt[oct, int32]]"}, FldName: "mode"},
 	}}},
-	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 72}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog", TypeSize: 112}, Fields: []Type{
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_prog_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize8", FldName: "ninsn", TypeSize: 4}}, BitSize: 64, Buf: "insns"},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "insns", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "bpf_instructions"}}},
@@ -1224,8 +1238,16 @@
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}},
 		&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}},
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Buf: "func_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "line_info_rec_size", TypeSize: 4}}, Val: 16},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "line_info_cnt", TypeSize: 4}}, Buf: "line_info"},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
 	}}},
-	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 80, ArgDir: 1}, Fields: []Type{
+	{Key: StructKey{Name: "bpf_prog_info", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_info", TypeSize: 192, ArgDir: 1}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 1}}},
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_prog_id", FldName: "id", TypeSize: 4, ArgDir: 1}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "tag", TypeSize: 8, ArgDir: 1}}},
@@ -1238,6 +1260,26 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_map_ids", TypeSize: 4, ArgDir: 1}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "map_ids", TypeSize: 8, ArgDir: 1}}},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ifindex", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "gpl_compatible", TypeSize: 4, ArgDir: 1}, BitfieldLen: 1}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_dev", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "netns_ino", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_ksyms", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_line_info", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "line_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_line_info"}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_line_info", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_line_info", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "jited_line_info_rec_size", TypeSize: 4, ArgDir: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_prog_tags", TypeSize: 4, ArgDir: 1}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "prog_tags", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}},
 	}, AlignAttr: 8}},
 	{Key: StructKey{Name: "bpf_prog_query"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_prog_query", TypeSize: 32}, Fields: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}},
@@ -14873,7 +14915,7 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 43},
 		&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "payload", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "ifla_xdp_policy"}}},
 	}, AlignAttr: 4}},
-	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 76}, Fields: []Type{
+	{Key: StructKey{Name: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "nlattr_t[const[IFLA_XDP_FD, int16], bpf_prog]", TypeSize: 116}, Fields: []Type{
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nla_len", TypeSize: 2}}, Buf: "parent"},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "nla_type", TypeSize: 2}}, Val: 1},
 		&StructType{Key: StructKey{Name: "bpf_prog"}, FldName: "payload"},
@@ -42225,6 +42267,7 @@
 	{Name: "BPF_END0", Value: 13},
 	{Name: "BPF_EXIST", Value: 2},
 	{Name: "BPF_EXIT0", Value: 9},
+	{Name: "BPF_FUNC_INFO_SIZE", Value: 8},
 	{Name: "BPF_F_ALLOW_MULTI", Value: 2},
 	{Name: "BPF_F_ALLOW_OVERRIDE", Value: 1},
 	{Name: "BPF_F_NO_COMMON_LRU", Value: 2},
@@ -42253,6 +42296,7 @@
 	{Name: "BPF_JSLT0", Value: 12},
 	{Name: "BPF_LD"},
 	{Name: "BPF_LDX", Value: 1},
+	{Name: "BPF_LINE_INFO_SIZE", Value: 16},
 	{Name: "BPF_LSH0", Value: 6},
 	{Name: "BPF_MAP_CREATE"},
 	{Name: "BPF_MAP_DELETE_ELEM", Value: 3},
@@ -49150,4 +49194,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_ppc64le = "3a82f74533ed5185ce73209a8c128a9c0ece3128"
+const revision_ppc64le = "993957a75ed5c6bb4bf511b222f5a6fde7b8bd26"