]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
uapi: update from 6.19 merge window
authorStephen Hemminger <stephen@networkplumber.org>
Sun, 7 Dec 2025 16:56:25 +0000 (08:56 -0800)
committerStephen Hemminger <stephen@networkplumber.org>
Sun, 7 Dec 2025 16:56:25 +0000 (08:56 -0800)
Early grab of headers to allow for CAN update.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
include/uapi/asm-generic/posix_types.h
include/uapi/linux/bpf.h
include/uapi/linux/can/netlink.h
include/uapi/linux/dpll.h
include/uapi/linux/fou.h
include/uapi/linux/if_ether.h
include/uapi/linux/magic.h
include/uapi/linux/mptcp_pm.h
include/uapi/linux/net_shaper.h

index 2f9c80595ba771e41767beb5d814b3204a39d332..5df751ff44c2e061f155ed2728e5442b7d932c2f 100644 (file)
@@ -86,6 +86,7 @@ typedef struct {
  */
 typedef __kernel_long_t        __kernel_off_t;
 typedef long long      __kernel_loff_t;
+typedef unsigned long long     __kernel_uoff_t;
 typedef __kernel_long_t        __kernel_old_time_t;
 typedef __kernel_long_t        __kernel_time_t;
 typedef long long __kernel_time64_t;
index 94ddf1dcd444dcf43096fd6dc27e96005fbd7f0e..22eae247bf35f65a1efab460d635b7bec8ee9a41 100644 (file)
@@ -1026,6 +1026,7 @@ enum bpf_map_type {
        BPF_MAP_TYPE_USER_RINGBUF,
        BPF_MAP_TYPE_CGRP_STORAGE,
        BPF_MAP_TYPE_ARENA,
+       BPF_MAP_TYPE_INSN_ARRAY,
        __MAX_BPF_MAP_TYPE
 };
 
@@ -1430,6 +1431,9 @@ enum {
 
 /* Do not translate kernel bpf_arena pointers to user pointers */
        BPF_F_NO_USER_CONV      = (1U << 18),
+
+/* Enable BPF ringbuf overwrite mode */
+       BPF_F_RB_OVERWRITE      = (1U << 19),
 };
 
 /* Flags for BPF_PROG_QUERY. */
@@ -5618,7 +5622,7 @@ union bpf_attr {
  *     Return
  *             *sk* if casting is valid, or **NULL** otherwise.
  *
- * long bpf_dynptr_from_mem(void *data, u32 size, u64 flags, struct bpf_dynptr *ptr)
+ * long bpf_dynptr_from_mem(void *data, u64 size, u64 flags, struct bpf_dynptr *ptr)
  *     Description
  *             Get a dynptr to local memory *data*.
  *
@@ -5661,7 +5665,7 @@ union bpf_attr {
  *     Return
  *             Nothing. Always succeeds.
  *
- * long bpf_dynptr_read(void *dst, u32 len, const struct bpf_dynptr *src, u32 offset, u64 flags)
+ * long bpf_dynptr_read(void *dst, u64 len, const struct bpf_dynptr *src, u64 offset, u64 flags)
  *     Description
  *             Read *len* bytes from *src* into *dst*, starting from *offset*
  *             into *src*.
@@ -5671,7 +5675,7 @@ union bpf_attr {
  *             of *src*'s data, -EINVAL if *src* is an invalid dynptr or if
  *             *flags* is not 0.
  *
- * long bpf_dynptr_write(const struct bpf_dynptr *dst, u32 offset, void *src, u32 len, u64 flags)
+ * long bpf_dynptr_write(const struct bpf_dynptr *dst, u64 offset, void *src, u64 len, u64 flags)
  *     Description
  *             Write *len* bytes from *src* into *dst*, starting from *offset*
  *             into *dst*.
@@ -5692,7 +5696,7 @@ union bpf_attr {
  *             is a read-only dynptr or if *flags* is not correct. For skb-type dynptrs,
  *             other errors correspond to errors returned by **bpf_skb_store_bytes**\ ().
  *
- * void *bpf_dynptr_data(const struct bpf_dynptr *ptr, u32 offset, u32 len)
+ * void *bpf_dynptr_data(const struct bpf_dynptr *ptr, u64 offset, u64 len)
  *     Description
  *             Get a pointer to the underlying dynptr data.
  *
@@ -6231,6 +6235,7 @@ enum {
        BPF_RB_RING_SIZE = 1,
        BPF_RB_CONS_POS = 2,
        BPF_RB_PROD_POS = 3,
+       BPF_RB_OVERWRITE_POS = 4,
 };
 
 /* BPF ring buffer constants */
@@ -7647,4 +7652,24 @@ enum bpf_kfunc_flags {
        BPF_F_PAD_ZEROS = (1ULL << 0),
 };
 
+/*
+ * Values of a BPF_MAP_TYPE_INSN_ARRAY entry must be of this type.
+ *
+ * Before the map is used the orig_off field should point to an
+ * instruction inside the program being loaded. The other fields
+ * must be set to 0.
+ *
+ * After the program is loaded, the xlated_off will be adjusted
+ * by the verifier to point to the index of the original instruction
+ * in the xlated program. If the instruction is deleted, it will
+ * be set to (u32)-1. The jitted_off will be set to the corresponding
+ * offset in the jitted image of the program.
+ */
+struct bpf_insn_array_value {
+       __u32 orig_off;
+       __u32 xlated_off;
+       __u32 jitted_off;
+       __u32 :32;
+};
+
 #endif /* __LINUX_BPF_H__ */
index 5cf825ebc4d0e64d3ce052f5aa3dcea03a649189..33297c813a1d6154f89143fc11f0c383e819ecd9 100644 (file)
@@ -5,6 +5,7 @@
  * Definitions for the CAN netlink interface
  *
  * Copyright (c) 2009 Wolfgang Grandegger <wg@grandegger.com>
+ * Copyright (c) 2021-2025 Vincent Mailhol <mailhol@kernel.org>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the version 2 of the GNU General Public License
@@ -103,6 +104,11 @@ struct can_ctrlmode {
 #define CAN_CTRLMODE_CC_LEN8_DLC       0x100   /* Classic CAN DLC option */
 #define CAN_CTRLMODE_TDC_AUTO          0x200   /* FD transceiver automatically calculates TDCV */
 #define CAN_CTRLMODE_TDC_MANUAL                0x400   /* FD TDCV is manually set up by user */
+#define CAN_CTRLMODE_RESTRICTED                0x800   /* Restricted operation mode */
+#define CAN_CTRLMODE_XL                        0x1000  /* CAN XL mode */
+#define CAN_CTRLMODE_XL_TDC_AUTO       0x2000  /* XL transceiver automatically calculates TDCV */
+#define CAN_CTRLMODE_XL_TDC_MANUAL     0x4000  /* XL TDCV is manually set up by user */
+#define CAN_CTRLMODE_XL_TMS            0x8000  /* Transceiver Mode Switching */
 
 /*
  * CAN device statistics
@@ -138,6 +144,11 @@ enum {
        IFLA_CAN_BITRATE_MAX,
        IFLA_CAN_TDC, /* FD */
        IFLA_CAN_CTRLMODE_EXT,
+       IFLA_CAN_XL_DATA_BITTIMING,
+       IFLA_CAN_XL_DATA_BITTIMING_CONST,
+       IFLA_CAN_XL_DATA_BITRATE_CONST,
+       IFLA_CAN_XL_TDC,
+       IFLA_CAN_XL_PWM,
 
        /* add new constants above here */
        __IFLA_CAN_MAX,
@@ -179,6 +190,29 @@ enum {
        IFLA_CAN_CTRLMODE_MAX = __IFLA_CAN_CTRLMODE - 1
 };
 
+/*
+ * CAN FD/XL Pulse-Width Modulation (PWM)
+ *
+ * Please refer to struct can_pwm_const and can_pwm in
+ * include/linux/can/bittiming.h for further details.
+ */
+enum {
+       IFLA_CAN_PWM_UNSPEC,
+       IFLA_CAN_PWM_PWMS_MIN,  /* u32 */
+       IFLA_CAN_PWM_PWMS_MAX,  /* u32 */
+       IFLA_CAN_PWM_PWML_MIN,  /* u32 */
+       IFLA_CAN_PWM_PWML_MAX,  /* u32 */
+       IFLA_CAN_PWM_PWMO_MIN,  /* u32 */
+       IFLA_CAN_PWM_PWMO_MAX,  /* u32 */
+       IFLA_CAN_PWM_PWMS,      /* u32 */
+       IFLA_CAN_PWM_PWML,      /* u32 */
+       IFLA_CAN_PWM_PWMO,      /* u32 */
+
+       /* add new constants above here */
+       __IFLA_CAN_PWM,
+       IFLA_CAN_PWM_MAX = __IFLA_CAN_PWM - 1
+};
+
 /* u16 termination range: 1..65535 Ohms */
 #define CAN_TERMINATION_DISABLED 0
 
index d9064eb95a10d1ef6c3f67cd9a77bd0b63eb7e97..2fd8091f530f193e431997f2cba548c9c9e51958 100644 (file)
@@ -2,6 +2,7 @@
 /* Do not edit directly, auto-generated from: */
 /*     Documentation/netlink/specs/dpll.yaml */
 /* YNL-GEN uapi header */
+/* To regenerate run: tools/net/ynl/ynl-regen.sh */
 
 #ifndef _LINUX_DPLL_H
 #define _LINUX_DPLL_H
index 1c2b680bb476336166c07e7cdb1e5f6f0142c705..0b4ddf10383e065547b6404c8f33c76c1350f53c 100644 (file)
@@ -2,6 +2,7 @@
 /* Do not edit directly, auto-generated from: */
 /*     Documentation/netlink/specs/fou.yaml */
 /* YNL-GEN uapi header */
+/* To regenerate run: tools/net/ynl/ynl-regen.sh */
 
 #ifndef _LINUX_FOU_H
 #define _LINUX_FOU_H
index 2c0ca402386c7c12e94f606b9691a457c8d33d64..7867b630dcec85b137c6662b24d198f457ac2dca 100644 (file)
@@ -92,7 +92,9 @@
 #define ETH_P_ETHERCAT 0x88A4          /* EtherCAT                     */
 #define ETH_P_8021AD   0x88A8          /* 802.1ad Service VLAN         */
 #define ETH_P_802_EX1  0x88B5          /* 802.1 Local Experimental 1.  */
-#define ETH_P_MXLGSW   0x88C3          /* MaxLinear GSW DSA [ NOT AN OFFICIALLY REGISTERED ID ] */
+#define ETH_P_MXLGSW   0x88C3          /* Infineon Technologies Corporate Research ST
+                                        * Used by MaxLinear GSW DSA
+                                        */
 #define ETH_P_PREAUTH  0x88C7          /* 802.11 Preauthentication */
 #define ETH_P_TIPC     0x88CA          /* TIPC                         */
 #define ETH_P_LLDP     0x88CC          /* Link Layer Discovery Protocol */
index bb575f3ab45e59aff283602f8e7c8af13e8bcc6a..638ca21b7a9095d51787b6561471c15646e68605 100644 (file)
 #define DEVMEM_MAGIC           0x454d444d      /* "DMEM" */
 #define SECRETMEM_MAGIC                0x5345434d      /* "SECM" */
 #define PID_FS_MAGIC           0x50494446      /* "PIDF" */
+#define GUEST_MEMFD_MAGIC      0x474d454d      /* "GMEM" */
 
 #endif /* __LINUX_MAGIC_H__ */
index 4a4e5d38b3722ee0715e4789250cc257cd549f7d..593be618b0edd13520720e610e5743597c0200f1 100644 (file)
@@ -2,6 +2,7 @@
 /* Do not edit directly, auto-generated from: */
 /*     Documentation/netlink/specs/mptcp_pm.yaml */
 /* YNL-GEN uapi header */
+/* To regenerate run: tools/net/ynl/ynl-regen.sh */
 
 #ifndef _LINUX_MPTCP_PM_H
 #define _LINUX_MPTCP_PM_H
index 053129138017e8b61155e58d7b3cd52e9ad9c5cf..bb9e97ccf3bb3abba1d531165e104950b303cbf7 100644 (file)
@@ -2,6 +2,7 @@
 /* Do not edit directly, auto-generated from: */
 /*     Documentation/netlink/specs/net_shaper.yaml */
 /* YNL-GEN uapi header */
+/* To regenerate run: tools/net/ynl/ynl-regen.sh */
 
 #ifndef _LINUX_NET_SHAPER_H
 #define _LINUX_NET_SHAPER_H