sys/linux: add missing arm/386 CAN consts
diff --git a/executor/defs.h b/executor/defs.h
index 537cad0..75987ac 100644
--- a/executor/defs.h
+++ b/executor/defs.h
@@ -70,7 +70,7 @@
 
 #if GOARCH_386
 #define GOARCH "386"
-#define SYZ_REVISION "3485783e987c01e7539e9a600e7167853f6777d8"
+#define SYZ_REVISION "36e9230da85f23351d178fbe23b605eccc5af223"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
@@ -90,7 +90,7 @@
 
 #if GOARCH_arm
 #define GOARCH "arm"
-#define SYZ_REVISION "b07583044202b9dd72c51cc64481dc24215a1cb1"
+#define SYZ_REVISION "66d9d1a9288f8af51764df608a12b6092ab4c305"
 #define SYZ_EXECUTOR_USES_FORK_SERVER 1
 #define SYZ_EXECUTOR_USES_SHMEM 1
 #define SYZ_PAGE_SIZE 4096
diff --git a/executor/syscalls.h b/executor/syscalls.h
index abf137c..4d0580f 100644
--- a/executor/syscalls.h
+++ b/executor/syscalls.h
@@ -2308,6 +2308,11 @@
     {"getsockopt$ARPT_SO_GET_ENTRIES", 365},
     {"getsockopt$ARPT_SO_GET_INFO", 365},
     {"getsockopt$ARPT_SO_GET_REVISION_TARGET", 365},
+    {"getsockopt$CAN_RAW_FD_FRAMES", 365},
+    {"getsockopt$CAN_RAW_FILTER", 365},
+    {"getsockopt$CAN_RAW_JOIN_FILTERS", 365},
+    {"getsockopt$CAN_RAW_LOOPBACK", 365},
+    {"getsockopt$CAN_RAW_RECV_OWN_MSGS", 365},
     {"getsockopt$EBT_SO_GET_ENTRIES", 365},
     {"getsockopt$EBT_SO_GET_INFO", 365},
     {"getsockopt$EBT_SO_GET_INIT_ENTRIES", 365},
@@ -2330,6 +2335,9 @@
     {"getsockopt$MISDN_TIME_STAMP", 365},
     {"getsockopt$SO_BINDTODEVICE", 365},
     {"getsockopt$SO_COOKIE", 365},
+    {"getsockopt$SO_J1939_ERRQUEUE", 365},
+    {"getsockopt$SO_J1939_PROMISC", 365},
+    {"getsockopt$SO_J1939_SEND_PRIO", 365},
     {"getsockopt$SO_TIMESTAMP", 365},
     {"getsockopt$SO_TIMESTAMPING", 365},
     {"getsockopt$TIPC_CONN_TIMEOUT", 365},
@@ -4173,6 +4181,12 @@
     {"setsockopt$ARPT_SO_SET_REPLACE", 366},
     {"setsockopt$CAIFSO_LINK_SELECT", 366},
     {"setsockopt$CAIFSO_REQ_PARAM", 366},
+    {"setsockopt$CAN_RAW_ERR_FILTER", 366},
+    {"setsockopt$CAN_RAW_FD_FRAMES", 366},
+    {"setsockopt$CAN_RAW_FILTER", 366},
+    {"setsockopt$CAN_RAW_JOIN_FILTERS", 366},
+    {"setsockopt$CAN_RAW_LOOPBACK", 366},
+    {"setsockopt$CAN_RAW_RECV_OWN_MSGS", 366},
     {"setsockopt$EBT_SO_SET_COUNTERS", 366},
     {"setsockopt$EBT_SO_SET_ENTRIES", 366},
     {"setsockopt$IP6T_SO_SET_ADD_COUNTERS", 366},
@@ -4204,6 +4218,10 @@
     {"setsockopt$RXRPC_UPGRADEABLE_SERVICE", 366},
     {"setsockopt$SO_ATTACH_FILTER", 366},
     {"setsockopt$SO_BINDTODEVICE", 366},
+    {"setsockopt$SO_J1939_ERRQUEUE", 366},
+    {"setsockopt$SO_J1939_FILTER", 366},
+    {"setsockopt$SO_J1939_PROMISC", 366},
+    {"setsockopt$SO_J1939_SEND_PRIO", 366},
     {"setsockopt$SO_RDS_MSG_RXPATH_LATENCY", 366},
     {"setsockopt$SO_RDS_TRANSPORT", 366},
     {"setsockopt$SO_TIMESTAMP", 366},
@@ -4477,6 +4495,7 @@
     {"socket$caif_seqpacket", 359},
     {"socket$caif_stream", 359},
     {"socket$can_bcm", 359},
+    {"socket$can_j1939", 359},
     {"socket$can_raw", 359},
     {"socket$hf", 359},
     {"socket$inet", 359},
@@ -7981,6 +8000,11 @@
     {"getsockopt$ARPT_SO_GET_ENTRIES", 295},
     {"getsockopt$ARPT_SO_GET_INFO", 295},
     {"getsockopt$ARPT_SO_GET_REVISION_TARGET", 295},
+    {"getsockopt$CAN_RAW_FD_FRAMES", 295},
+    {"getsockopt$CAN_RAW_FILTER", 295},
+    {"getsockopt$CAN_RAW_JOIN_FILTERS", 295},
+    {"getsockopt$CAN_RAW_LOOPBACK", 295},
+    {"getsockopt$CAN_RAW_RECV_OWN_MSGS", 295},
     {"getsockopt$EBT_SO_GET_ENTRIES", 295},
     {"getsockopt$EBT_SO_GET_INFO", 295},
     {"getsockopt$EBT_SO_GET_INIT_ENTRIES", 295},
@@ -8003,6 +8027,9 @@
     {"getsockopt$MISDN_TIME_STAMP", 295},
     {"getsockopt$SO_BINDTODEVICE", 295},
     {"getsockopt$SO_COOKIE", 295},
+    {"getsockopt$SO_J1939_ERRQUEUE", 295},
+    {"getsockopt$SO_J1939_PROMISC", 295},
+    {"getsockopt$SO_J1939_SEND_PRIO", 295},
     {"getsockopt$SO_TIMESTAMP", 295},
     {"getsockopt$SO_TIMESTAMPING", 295},
     {"getsockopt$TIPC_CONN_TIMEOUT", 295},
@@ -9816,6 +9843,12 @@
     {"setsockopt$ARPT_SO_SET_REPLACE", 294},
     {"setsockopt$CAIFSO_LINK_SELECT", 294},
     {"setsockopt$CAIFSO_REQ_PARAM", 294},
+    {"setsockopt$CAN_RAW_ERR_FILTER", 294},
+    {"setsockopt$CAN_RAW_FD_FRAMES", 294},
+    {"setsockopt$CAN_RAW_FILTER", 294},
+    {"setsockopt$CAN_RAW_JOIN_FILTERS", 294},
+    {"setsockopt$CAN_RAW_LOOPBACK", 294},
+    {"setsockopt$CAN_RAW_RECV_OWN_MSGS", 294},
     {"setsockopt$EBT_SO_SET_COUNTERS", 294},
     {"setsockopt$EBT_SO_SET_ENTRIES", 294},
     {"setsockopt$IP6T_SO_SET_ADD_COUNTERS", 294},
@@ -9847,6 +9880,10 @@
     {"setsockopt$RXRPC_UPGRADEABLE_SERVICE", 294},
     {"setsockopt$SO_ATTACH_FILTER", 294},
     {"setsockopt$SO_BINDTODEVICE", 294},
+    {"setsockopt$SO_J1939_ERRQUEUE", 294},
+    {"setsockopt$SO_J1939_FILTER", 294},
+    {"setsockopt$SO_J1939_PROMISC", 294},
+    {"setsockopt$SO_J1939_SEND_PRIO", 294},
     {"setsockopt$SO_RDS_MSG_RXPATH_LATENCY", 294},
     {"setsockopt$SO_RDS_TRANSPORT", 294},
     {"setsockopt$SO_TIMESTAMP", 294},
@@ -10120,6 +10157,7 @@
     {"socket$caif_seqpacket", 281},
     {"socket$caif_stream", 281},
     {"socket$can_bcm", 281},
+    {"socket$can_j1939", 281},
     {"socket$can_raw", 281},
     {"socket$hf", 281},
     {"socket$inet", 281},
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 84a5d4e..bed4469 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -1737,6 +1737,10 @@
 		&StructType{Key: StructKey{Name: "canid_t"}, FldName: "can_id"},
 		&StructType{Key: StructKey{Name: "canid_t"}, FldName: "can_mask"},
 	}}},
+	{Key: StructKey{Name: "can_filter", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "can_filter", TypeSize: 8, ArgDir: 1}, Fields: []Type{
+		&StructType{Key: StructKey{Name: "canid_t", Dir: 1}, FldName: "can_id"},
+		&StructType{Key: StructKey{Name: "canid_t", Dir: 1}, FldName: "can_mask"},
+	}}},
 	{Key: StructKey{Name: "can_frame_t[CANFD_MAX_DLEN]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "can_frame_t[CANFD_MAX_DLEN]", TypeSize: 72}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "canid_t"}, FldName: "can_id"},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "len", TypeSize: 1}}, Kind: 1, RangeEnd: 64},
@@ -1769,6 +1773,12 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "rtr", TypeSize: 4}, BitfieldOff: 30, BitfieldLen: 1, BitfieldMdl: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "eff", TypeSize: 4}, BitfieldOff: 31, BitfieldLen: 1}},
 	}}},
+	{Key: StructKey{Name: "canid_t", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "canid_t", TypeSize: 4, ArgDir: 1}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "id", TypeSize: 4, ArgDir: 1}, BitfieldLen: 29, BitfieldMdl: true}, Kind: 1, RangeEnd: 4},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "err", TypeSize: 4, ArgDir: 1}, BitfieldOff: 29, BitfieldLen: 1, BitfieldMdl: true}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "rtr", TypeSize: 4, ArgDir: 1}, BitfieldOff: 30, BitfieldLen: 1, BitfieldMdl: true}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "eff", TypeSize: 4, ArgDir: 1}, BitfieldOff: 31, BitfieldLen: 1}},
+	}}},
 	{Key: StructKey{Name: "cap_data"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "cap_data", TypeSize: 24}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "eff0", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "perm0", TypeSize: 4}}},
@@ -10132,6 +10142,15 @@
 		&StructType{Key: StructKey{Name: "timeval", Dir: 1}, FldName: "interv"},
 		&StructType{Key: StructKey{Name: "timeval", Dir: 1}, FldName: "value"},
 	}}},
+	{Key: StructKey{Name: "j1939_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "j1939_filter", TypeSize: 32}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "name", TypeSize: 8}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "name_mask", TypeSize: 8}}},
+		&StructType{Key: StructKey{Name: "can_j1939_pgn"}, FldName: "pgn"},
+		&StructType{Key: StructKey{Name: "can_j1939_pgn"}, FldName: "pgn_mask"},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "addr", TypeSize: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "addr_mask", TypeSize: 1}}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 6}}, IsPad: true},
+	}}},
 	{Key: StructKey{Name: "jfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "jfs_options", IsVarlen: true}, Fields: []Type{
 		&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "integrity", TypeSize: 9}, Kind: 2, Values: []string{"integrity"}, NoZ: true},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nointegrity", TypeSize: 11}, Kind: 2, Values: []string{"nointegrity"}, NoZ: true},
@@ -33218,6 +33237,41 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xt_get_revision"}}},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", TypeSize: 4}}, Path: []string{"val"}}},
 	}},
+	{NR: 365, Name: "getsockopt$CAN_RAW_FD_FRAMES", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 5},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 365, Name: "getsockopt$CAN_RAW_FILTER", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 1},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "can_filter", Dir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 365, Name: "getsockopt$CAN_RAW_JOIN_FILTERS", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 6},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 365, Name: "getsockopt$CAN_RAW_LOOPBACK", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 365, Name: "getsockopt$CAN_RAW_RECV_OWN_MSGS", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
 	{NR: 365, Name: "getsockopt$EBT_SO_GET_ENTRIES", CallName: "getsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}},
@@ -33372,6 +33426,27 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optlen", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", TypeSize: 4, ArgDir: 2}}, Path: []string{"optval"}}},
 	}},
+	{NR: 365, Name: "getsockopt$SO_J1939_ERRQUEUE", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 365, Name: "getsockopt$SO_J1939_PROMISC", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 2},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 365, Name: "getsockopt$SO_J1939_SEND_PRIO", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
 	{NR: 365, Name: "getsockopt$SO_TIMESTAMP", CallName: "getsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 1},
@@ -43099,6 +43174,48 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Kind: 1, RangeEnd: 256}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "arglen", TypeSize: 4}}, Path: []string{"arg"}},
 	}},
+	{NR: 366, Name: "setsockopt$CAN_RAW_ERR_FILTER", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 2},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$CAN_RAW_FD_FRAMES", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 5},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$CAN_RAW_FILTER", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 1},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "can_filter"}}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$CAN_RAW_JOIN_FILTERS", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 6},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$CAN_RAW_LOOPBACK", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$CAN_RAW_RECV_OWN_MSGS", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
 	{NR: 366, Name: "setsockopt$EBT_SO_SET_COUNTERS", CallName: "setsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}},
@@ -43314,6 +43431,34 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 16}, Kind: 2, SubKind: "devnames", Values: []string{"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "lo\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "tunl0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "gre0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "gretap0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip_vti0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6_vti0\x00\x00\x00\x00\x00\x00\x00\x00", "sit0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6tnl0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6gre0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6gretap0\x00\x00\x00\x00\x00\x00", "bond0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "dummy0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "eql\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ifb0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ipddp0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "yam0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bcsf0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bcsh0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "teql0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "nr0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "rose0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "irlan0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "erspan0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bpq0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "vlan0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bridge0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "vcan0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "team0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "syz_tun\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth0_to_bridge\x00", "veth1_to_bridge\x00", "veth0_to_bond\x00\x00\x00", "veth1_to_bond\x00\x00\x00", "veth0_to_team\x00\x00\x00", "veth1_to_team\x00\x00\x00", "bridge_slave_0\x00\x00", "bridge_slave_1\x00\x00", "bond_slave_0\x00\x00\x00\x00", "bond_slave_1\x00\x00\x00\x00", "team_slave_0\x00\x00\x00\x00", "team_slave_1\x00\x00\x00\x00", "syzkaller0\x00\x00\x00\x00\x00\x00", "syzkaller1\x00\x00\x00\x00\x00\x00", "lapb0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "hwsim0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "rose0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "nr0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth0_to_hsr\x00\x00\x00\x00", "veth1_to_hsr\x00\x00\x00\x00", "hsr0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6erspan0\x00\x00\x00\x00\x00\x00", "nlmon0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "vxcan1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "caif0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "batadv0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "netdevsim0\x00\x00\x00\x00\x00\x00"}}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "optlen", TypeSize: 4}}, Path: []string{"optval"}},
 	}},
+	{NR: 366, Name: "setsockopt$SO_J1939_ERRQUEUE", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$SO_J1939_FILTER", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 1},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "j1939_filter"}}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$SO_J1939_PROMISC", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 2},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 366, Name: "setsockopt$SO_J1939_SEND_PRIO", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 7}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
 	{NR: 366, Name: "setsockopt$SO_RDS_MSG_RXPATH_LATENCY", CallName: "setsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_rds", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 276},
@@ -45161,6 +45306,11 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 2},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}, Val: 2},
 	}, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_bcm", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+	{NR: 359, Name: "socket$can_j1939", CallName: "socket", Args: []Type{
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 29},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 2},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}, Val: 7},
+	}, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
 	{NR: 359, Name: "socket$can_raw", CallName: "socket", Args: []Type{
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 29},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 3},
@@ -47722,8 +47872,15 @@
 	{Name: "CANFD_MAX_DLEN", Value: 64},
 	{Name: "CAN_BCM", Value: 2},
 	{Name: "CAN_FD_FRAME", Value: 2048},
+	{Name: "CAN_J1939", Value: 7},
 	{Name: "CAN_MAX_DLEN", Value: 8},
 	{Name: "CAN_RAW", Value: 1},
+	{Name: "CAN_RAW_ERR_FILTER", Value: 2},
+	{Name: "CAN_RAW_FD_FRAMES", Value: 5},
+	{Name: "CAN_RAW_FILTER", Value: 1},
+	{Name: "CAN_RAW_JOIN_FILTERS", Value: 6},
+	{Name: "CAN_RAW_LOOPBACK", Value: 3},
+	{Name: "CAN_RAW_RECV_OWN_MSGS", Value: 4},
 	{Name: "CAPI_ALERT", Value: 1},
 	{Name: "CAPI_CLR_FLAGS", Value: 2147762981},
 	{Name: "CAPI_CONF", Value: 129},
@@ -52197,6 +52354,8 @@
 	{Name: "SOL_AX25", Value: 257},
 	{Name: "SOL_BLUETOOTH", Value: 274},
 	{Name: "SOL_CAIF", Value: 278},
+	{Name: "SOL_CAN_J1939", Value: 107},
+	{Name: "SOL_CAN_RAW", Value: 101},
 	{Name: "SOL_DCCP", Value: 269},
 	{Name: "SOL_DECNET", Value: 261},
 	{Name: "SOL_ICMPV6", Value: 58},
@@ -52243,6 +52402,10 @@
 	{Name: "SO_DONTROUTE", Value: 5},
 	{Name: "SO_ERROR", Value: 4},
 	{Name: "SO_GET_FILTER", Value: 26},
+	{Name: "SO_J1939_ERRQUEUE", Value: 4},
+	{Name: "SO_J1939_FILTER", Value: 1},
+	{Name: "SO_J1939_PROMISC", Value: 2},
+	{Name: "SO_J1939_SEND_PRIO", Value: 3},
 	{Name: "SO_KEEPALIVE", Value: 9},
 	{Name: "SO_LINGER", Value: 13},
 	{Name: "SO_LOCK_FILTER", Value: 44},
@@ -55387,4 +55550,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_386 = "3485783e987c01e7539e9a600e7167853f6777d8"
+const revision_386 = "36e9230da85f23351d178fbe23b605eccc5af223"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 009d884..05a769d 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -1737,6 +1737,10 @@
 		&StructType{Key: StructKey{Name: "canid_t"}, FldName: "can_id"},
 		&StructType{Key: StructKey{Name: "canid_t"}, FldName: "can_mask"},
 	}}},
+	{Key: StructKey{Name: "can_filter", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "can_filter", TypeSize: 8, ArgDir: 1}, Fields: []Type{
+		&StructType{Key: StructKey{Name: "canid_t", Dir: 1}, FldName: "can_id"},
+		&StructType{Key: StructKey{Name: "canid_t", Dir: 1}, FldName: "can_mask"},
+	}}},
 	{Key: StructKey{Name: "can_frame_t[CANFD_MAX_DLEN]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "can_frame_t[CANFD_MAX_DLEN]", TypeSize: 72}, Fields: []Type{
 		&StructType{Key: StructKey{Name: "canid_t"}, FldName: "can_id"},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "len", TypeSize: 1}}, Kind: 1, RangeEnd: 64},
@@ -1769,6 +1773,12 @@
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "rtr", TypeSize: 4}, BitfieldOff: 30, BitfieldLen: 1, BitfieldMdl: true}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "eff", TypeSize: 4}, BitfieldOff: 31, BitfieldLen: 1}},
 	}}},
+	{Key: StructKey{Name: "canid_t", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "canid_t", TypeSize: 4, ArgDir: 1}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "id", TypeSize: 4, ArgDir: 1}, BitfieldLen: 29, BitfieldMdl: true}, Kind: 1, RangeEnd: 4},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "err", TypeSize: 4, ArgDir: 1}, BitfieldOff: 29, BitfieldLen: 1, BitfieldMdl: true}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "rtr", TypeSize: 4, ArgDir: 1}, BitfieldOff: 30, BitfieldLen: 1, BitfieldMdl: true}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "eff", TypeSize: 4, ArgDir: 1}, BitfieldOff: 31, BitfieldLen: 1}},
+	}}},
 	{Key: StructKey{Name: "cap_data"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "cap_data", TypeSize: 24}, Fields: []Type{
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "eff0", TypeSize: 4}}},
 		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "perm0", TypeSize: 4}}},
@@ -10132,6 +10142,15 @@
 		&StructType{Key: StructKey{Name: "timeval", Dir: 1}, FldName: "interv"},
 		&StructType{Key: StructKey{Name: "timeval", Dir: 1}, FldName: "value"},
 	}}},
+	{Key: StructKey{Name: "j1939_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "j1939_filter", TypeSize: 32}, Fields: []Type{
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "name", TypeSize: 8}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "name_mask", TypeSize: 8}}},
+		&StructType{Key: StructKey{Name: "can_j1939_pgn"}, FldName: "pgn"},
+		&StructType{Key: StructKey{Name: "can_j1939_pgn"}, FldName: "pgn_mask"},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "addr", TypeSize: 1}}},
+		&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "addr_mask", TypeSize: 1}}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 6}}, IsPad: true},
+	}}},
 	{Key: StructKey{Name: "jfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "jfs_options", IsVarlen: true}, Fields: []Type{
 		&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "integrity", TypeSize: 9}, Kind: 2, Values: []string{"integrity"}, NoZ: true},
 		&BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nointegrity", TypeSize: 11}, Kind: 2, Values: []string{"nointegrity"}, NoZ: true},
@@ -33027,6 +33046,41 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "xt_get_revision"}}},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", TypeSize: 4}}, Path: []string{"val"}}},
 	}},
+	{NR: 295, Name: "getsockopt$CAN_RAW_FD_FRAMES", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 5},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 295, Name: "getsockopt$CAN_RAW_FILTER", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 1},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "can_filter", Dir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 295, Name: "getsockopt$CAN_RAW_JOIN_FILTERS", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 6},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 295, Name: "getsockopt$CAN_RAW_LOOPBACK", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 295, Name: "getsockopt$CAN_RAW_RECV_OWN_MSGS", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
 	{NR: 295, Name: "getsockopt$EBT_SO_GET_ENTRIES", CallName: "getsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}},
@@ -33181,6 +33235,27 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}},
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optlen", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", TypeSize: 4, ArgDir: 2}}, Path: []string{"optval"}}},
 	}},
+	{NR: 295, Name: "getsockopt$SO_J1939_ERRQUEUE", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 295, Name: "getsockopt$SO_J1939_PROMISC", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 2},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
+	{NR: 295, Name: "getsockopt$SO_J1939_SEND_PRIO", CallName: "getsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "len", TypeSize: 4}, Type: &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", TypeSize: 4, ArgDir: 2}}, BitSize: 8, Path: []string{"val"}}},
+	}},
 	{NR: 295, Name: "getsockopt$SO_TIMESTAMP", CallName: "getsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 1},
@@ -42761,6 +42836,48 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Kind: 1, RangeEnd: 256}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "arglen", TypeSize: 4}}, Path: []string{"arg"}},
 	}},
+	{NR: 294, Name: "setsockopt$CAN_RAW_ERR_FILTER", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 2},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$CAN_RAW_FD_FRAMES", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 5},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$CAN_RAW_FILTER", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 1},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "can_filter"}}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$CAN_RAW_JOIN_FILTERS", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 6},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$CAN_RAW_LOOPBACK", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$CAN_RAW_RECV_OWN_MSGS", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 101},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
 	{NR: 294, Name: "setsockopt$EBT_SO_SET_COUNTERS", CallName: "setsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}},
@@ -42976,6 +43093,34 @@
 		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "optval", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 16}, Kind: 2, SubKind: "devnames", Values: []string{"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "lo\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "tunl0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "gre0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "gretap0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip_vti0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6_vti0\x00\x00\x00\x00\x00\x00\x00\x00", "sit0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6tnl0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6gre0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6gretap0\x00\x00\x00\x00\x00\x00", "bond0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "dummy0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "eql\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ifb0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ipddp0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "yam0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bcsf0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bcsh0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "teql0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "nr0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "rose0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "irlan0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "erspan0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bpq0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "vlan0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "bridge0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "vcan0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "team0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "syz_tun\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth0_to_bridge\x00", "veth1_to_bridge\x00", "veth0_to_bond\x00\x00\x00", "veth1_to_bond\x00\x00\x00", "veth0_to_team\x00\x00\x00", "veth1_to_team\x00\x00\x00", "bridge_slave_0\x00\x00", "bridge_slave_1\x00\x00", "bond_slave_0\x00\x00\x00\x00", "bond_slave_1\x00\x00\x00\x00", "team_slave_0\x00\x00\x00\x00", "team_slave_1\x00\x00\x00\x00", "syzkaller0\x00\x00\x00\x00\x00\x00", "syzkaller1\x00\x00\x00\x00\x00\x00", "lapb0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "hwsim0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "rose0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "nr0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "veth0_to_hsr\x00\x00\x00\x00", "veth1_to_hsr\x00\x00\x00\x00", "hsr0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "ip6erspan0\x00\x00\x00\x00\x00\x00", "nlmon0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "vxcan1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "caif0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", "batadv0\x00\x00\x00\x00\x00\x00\x00\x00\x00", "netdevsim0\x00\x00\x00\x00\x00\x00"}}},
 		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "optlen", TypeSize: 4}}, Path: []string{"optval"}},
 	}},
+	{NR: 294, Name: "setsockopt$SO_J1939_ERRQUEUE", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 4},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$SO_J1939_FILTER", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 1},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "j1939_filter"}}}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$SO_J1939_PROMISC", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 2},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 1}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
+	{NR: 294, Name: "setsockopt$SO_J1939_SEND_PRIO", CallName: "setsockopt", Args: []Type{
+		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "fd", TypeSize: 4}},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 107},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 3},
+		&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "val", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 7}},
+		&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Path: []string{"val"}},
+	}},
 	{NR: 294, Name: "setsockopt$SO_RDS_MSG_RXPATH_LATENCY", CallName: "setsockopt", Args: []Type{
 		&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_rds", FldName: "fd", TypeSize: 4}},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "level", TypeSize: 4}}, Val: 276},
@@ -44823,6 +44968,11 @@
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 2},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}, Val: 2},
 	}, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_bcm", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+	{NR: 281, Name: "socket$can_j1939", CallName: "socket", Args: []Type{
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 29},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 2},
+		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}, Val: 7},
+	}, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_j1939", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
 	{NR: 281, Name: "socket$can_raw", CallName: "socket", Args: []Type{
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 29},
 		&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 3},
@@ -47362,8 +47512,15 @@
 	{Name: "CANFD_MAX_DLEN", Value: 64},
 	{Name: "CAN_BCM", Value: 2},
 	{Name: "CAN_FD_FRAME", Value: 2048},
+	{Name: "CAN_J1939", Value: 7},
 	{Name: "CAN_MAX_DLEN", Value: 8},
 	{Name: "CAN_RAW", Value: 1},
+	{Name: "CAN_RAW_ERR_FILTER", Value: 2},
+	{Name: "CAN_RAW_FD_FRAMES", Value: 5},
+	{Name: "CAN_RAW_FILTER", Value: 1},
+	{Name: "CAN_RAW_JOIN_FILTERS", Value: 6},
+	{Name: "CAN_RAW_LOOPBACK", Value: 3},
+	{Name: "CAN_RAW_RECV_OWN_MSGS", Value: 4},
 	{Name: "CAPI_ALERT", Value: 1},
 	{Name: "CAPI_CLR_FLAGS", Value: 2147762981},
 	{Name: "CAPI_CONF", Value: 129},
@@ -51784,6 +51941,8 @@
 	{Name: "SOL_AX25", Value: 257},
 	{Name: "SOL_BLUETOOTH", Value: 274},
 	{Name: "SOL_CAIF", Value: 278},
+	{Name: "SOL_CAN_J1939", Value: 107},
+	{Name: "SOL_CAN_RAW", Value: 101},
 	{Name: "SOL_DCCP", Value: 269},
 	{Name: "SOL_DECNET", Value: 261},
 	{Name: "SOL_ICMPV6", Value: 58},
@@ -51830,6 +51989,10 @@
 	{Name: "SO_DONTROUTE", Value: 5},
 	{Name: "SO_ERROR", Value: 4},
 	{Name: "SO_GET_FILTER", Value: 26},
+	{Name: "SO_J1939_ERRQUEUE", Value: 4},
+	{Name: "SO_J1939_FILTER", Value: 1},
+	{Name: "SO_J1939_PROMISC", Value: 2},
+	{Name: "SO_J1939_SEND_PRIO", Value: 3},
 	{Name: "SO_KEEPALIVE", Value: 9},
 	{Name: "SO_LINGER", Value: 13},
 	{Name: "SO_LOCK_FILTER", Value: 44},
@@ -54964,4 +55127,4 @@
 	{Name: "bpf_insn_load_imm_dw", Value: 24},
 }
 
-const revision_arm = "b07583044202b9dd72c51cc64481dc24215a1cb1"
+const revision_arm = "66d9d1a9288f8af51764df608a12b6092ab4c305"
diff --git a/sys/linux/socket_can_386.const b/sys/linux/socket_can_386.const
index 6a08df9..879df3f 100644
--- a/sys/linux/socket_can_386.const
+++ b/sys/linux/socket_can_386.const
@@ -5,8 +5,15 @@
 CANFD_MAX_DLEN = 64
 CAN_BCM = 2
 CAN_FD_FRAME = 2048
+CAN_J1939 = 7
 CAN_MAX_DLEN = 8
 CAN_RAW = 1
+CAN_RAW_ERR_FILTER = 2
+CAN_RAW_FD_FRAMES = 5
+CAN_RAW_FILTER = 1
+CAN_RAW_JOIN_FILTERS = 6
+CAN_RAW_LOOPBACK = 3
+CAN_RAW_RECV_OWN_MSGS = 4
 RX_ANNOUNCE_RESUME = 256
 RX_CHECK_DLC = 64
 RX_DELETE = 6
@@ -19,6 +26,12 @@
 SIOCGIFINDEX = 35123
 SOCK_DGRAM = 2
 SOCK_RAW = 3
+SOL_CAN_J1939 = 107
+SOL_CAN_RAW = 101
+SO_J1939_ERRQUEUE = 4
+SO_J1939_FILTER = 1
+SO_J1939_PROMISC = 2
+SO_J1939_SEND_PRIO = 3
 STARTTIMER = 2
 TX_ANNOUNCE = 8
 TX_COUNTEVT = 4
@@ -30,6 +43,9 @@
 TX_SETUP = 1
 __NR_bind = 361
 __NR_connect = 362
+__NR_getsockopt = 365
 __NR_ioctl = 54
+__NR_recvmsg = 372
 __NR_sendmsg = 370
+__NR_setsockopt = 366
 __NR_socket = 359
diff --git a/sys/linux/socket_can_arm.const b/sys/linux/socket_can_arm.const
index e941c29..89a4c1b 100644
--- a/sys/linux/socket_can_arm.const
+++ b/sys/linux/socket_can_arm.const
@@ -5,8 +5,15 @@
 CANFD_MAX_DLEN = 64
 CAN_BCM = 2
 CAN_FD_FRAME = 2048
+CAN_J1939 = 7
 CAN_MAX_DLEN = 8
 CAN_RAW = 1
+CAN_RAW_ERR_FILTER = 2
+CAN_RAW_FD_FRAMES = 5
+CAN_RAW_FILTER = 1
+CAN_RAW_JOIN_FILTERS = 6
+CAN_RAW_LOOPBACK = 3
+CAN_RAW_RECV_OWN_MSGS = 4
 RX_ANNOUNCE_RESUME = 256
 RX_CHECK_DLC = 64
 RX_DELETE = 6
@@ -19,6 +26,12 @@
 SIOCGIFINDEX = 35123
 SOCK_DGRAM = 2
 SOCK_RAW = 3
+SOL_CAN_J1939 = 107
+SOL_CAN_RAW = 101
+SO_J1939_ERRQUEUE = 4
+SO_J1939_FILTER = 1
+SO_J1939_PROMISC = 2
+SO_J1939_SEND_PRIO = 3
 STARTTIMER = 2
 TX_ANNOUNCE = 8
 TX_COUNTEVT = 4
@@ -30,6 +43,9 @@
 TX_SETUP = 1
 __NR_bind = 282
 __NR_connect = 283
+__NR_getsockopt = 295
 __NR_ioctl = 54
+__NR_recvmsg = 297
 __NR_sendmsg = 296
+__NR_setsockopt = 294
 __NR_socket = 281