linux-headers: update to 6.10-rc1
authorThomas Weißschuh <thomas@t-8ch.de>
Mon, 27 May 2024 06:27:48 +0000 (08:27 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 1 Jul 2024 21:16:04 +0000 (17:16 -0400)
Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Message-Id: <20240527-pvpanic-shutdown-v8-2-5a28ec02558b@t-8ch.de>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
19 files changed:
include/standard-headers/linux/ethtool.h
include/standard-headers/linux/pci_regs.h
include/standard-headers/linux/virtio_bt.h
include/standard-headers/linux/virtio_mem.h
include/standard-headers/linux/virtio_net.h
include/standard-headers/misc/pvpanic.h
linux-headers/asm-generic/unistd.h
linux-headers/asm-mips/unistd_n32.h
linux-headers/asm-mips/unistd_n64.h
linux-headers/asm-mips/unistd_o32.h
linux-headers/asm-powerpc/unistd_32.h
linux-headers/asm-powerpc/unistd_64.h
linux-headers/asm-s390/unistd_32.h
linux-headers/asm-s390/unistd_64.h
linux-headers/asm-x86/unistd_32.h
linux-headers/asm-x86/unistd_64.h
linux-headers/asm-x86/unistd_x32.h
linux-headers/linux/kvm.h
linux-headers/linux/stddef.h

index 01503784d26f29d40164efd51d49caebf32a92be..b0b4b68410f100176dc09943a159a0a26001cd20 100644 (file)
@@ -752,6 +752,61 @@ enum ethtool_module_power_mode {
        ETHTOOL_MODULE_POWER_MODE_HIGH,
 };
 
+/**
+ * enum ethtool_pse_types - Types of PSE controller.
+ * @ETHTOOL_PSE_UNKNOWN: Type of PSE controller is unknown
+ * @ETHTOOL_PSE_PODL: PSE controller which support PoDL
+ * @ETHTOOL_PSE_C33: PSE controller which support Clause 33 (PoE)
+ */
+enum ethtool_pse_types {
+       ETHTOOL_PSE_UNKNOWN =   1 << 0,
+       ETHTOOL_PSE_PODL =      1 << 1,
+       ETHTOOL_PSE_C33 =       1 << 2,
+};
+
+/**
+ * enum ethtool_c33_pse_admin_state - operational state of the PoDL PSE
+ *     functions. IEEE 802.3-2022 30.9.1.1.2 aPSEAdminState
+ * @ETHTOOL_C33_PSE_ADMIN_STATE_UNKNOWN: state of PSE functions is unknown
+ * @ETHTOOL_C33_PSE_ADMIN_STATE_DISABLED: PSE functions are disabled
+ * @ETHTOOL_C33_PSE_ADMIN_STATE_ENABLED: PSE functions are enabled
+ */
+enum ethtool_c33_pse_admin_state {
+       ETHTOOL_C33_PSE_ADMIN_STATE_UNKNOWN = 1,
+       ETHTOOL_C33_PSE_ADMIN_STATE_DISABLED,
+       ETHTOOL_C33_PSE_ADMIN_STATE_ENABLED,
+};
+
+/**
+ * enum ethtool_c33_pse_pw_d_status - power detection status of the PSE.
+ *     IEEE 802.3-2022 30.9.1.1.3 aPoDLPSEPowerDetectionStatus:
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_UNKNOWN: PSE status is unknown
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_DISABLED: The enumeration "disabled"
+ *     indicates that the PSE State diagram is in the state DISABLED.
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_SEARCHING: The enumeration "searching"
+ *     indicates the PSE State diagram is in a state other than those
+ *     listed.
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_DELIVERING: The enumeration
+ *     "deliveringPower" indicates that the PSE State diagram is in the
+ *     state POWER_ON.
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_TEST: The enumeration "test" indicates that
+ *     the PSE State diagram is in the state TEST_MODE.
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_FAULT: The enumeration "fault" indicates that
+ *     the PSE State diagram is in the state TEST_ERROR.
+ * @ETHTOOL_C33_PSE_PW_D_STATUS_OTHERFAULT: The enumeration "otherFault"
+ *     indicates that the PSE State diagram is in the state IDLE due to
+ *     the variable error_condition = true.
+ */
+enum ethtool_c33_pse_pw_d_status {
+       ETHTOOL_C33_PSE_PW_D_STATUS_UNKNOWN = 1,
+       ETHTOOL_C33_PSE_PW_D_STATUS_DISABLED,
+       ETHTOOL_C33_PSE_PW_D_STATUS_SEARCHING,
+       ETHTOOL_C33_PSE_PW_D_STATUS_DELIVERING,
+       ETHTOOL_C33_PSE_PW_D_STATUS_TEST,
+       ETHTOOL_C33_PSE_PW_D_STATUS_FAULT,
+       ETHTOOL_C33_PSE_PW_D_STATUS_OTHERFAULT,
+};
+
 /**
  * enum ethtool_podl_pse_admin_state - operational state of the PoDL PSE
  *     functions. IEEE 802.3-2018 30.15.1.1.2 aPoDLPSEAdminState
index a39193213ff25ba24233fe28bc4977f38c294702..94c00996e633eb2bfd2a59cb8524383148c31643 100644 (file)
 #define PCI_DOE_DATA_OBJECT_HEADER_2_LENGTH            0x0003ffff
 
 #define PCI_DOE_DATA_OBJECT_DISC_REQ_3_INDEX           0x000000ff
+#define PCI_DOE_DATA_OBJECT_DISC_REQ_3_VER             0x0000ff00
 #define PCI_DOE_DATA_OBJECT_DISC_RSP_3_VID             0x0000ffff
 #define PCI_DOE_DATA_OBJECT_DISC_RSP_3_PROTOCOL                0x00ff0000
 #define PCI_DOE_DATA_OBJECT_DISC_RSP_3_NEXT_INDEX      0xff000000
 
+/* Compute Express Link (CXL r3.1, sec 8.1.5) */
+#define PCI_DVSEC_CXL_PORT                             3
+#define PCI_DVSEC_CXL_PORT_CTL                         0x0c
+#define PCI_DVSEC_CXL_PORT_CTL_UNMASK_SBR              0x00000001
+
 #endif /* LINUX_PCI_REGS_H */
index a11ecc3f92df1adfec255979da3b166057a8a3bf..6f0dee7e326a90dc16355e9436b06da0a5b67d2c 100644 (file)
@@ -13,7 +13,6 @@
 
 enum virtio_bt_config_type {
        VIRTIO_BT_CONFIG_TYPE_PRIMARY   = 0,
-       VIRTIO_BT_CONFIG_TYPE_AMP       = 1,
 };
 
 enum virtio_bt_config_vendor {
index 18c74c527c8ab19ff3d7f1b8601fdc665d4df68d..6bfa41bd8b6e256e3ba3f62ac2824a9398492772 100644 (file)
@@ -90,6 +90,8 @@
 #define VIRTIO_MEM_F_ACPI_PXM          0
 /* unplugged memory must not be accessed */
 #define VIRTIO_MEM_F_UNPLUGGED_INACCESSIBLE    1
+/* plugged memory will remain plugged when suspending+resuming */
+#define VIRTIO_MEM_F_PERSISTENT_SUSPEND                2
 
 
 /* --- virtio-mem: guest -> host requests --- */
index 0f8841774238f0a503fc671e6dfb5518de3c5505..fc594fe5fcbe3a750d835aa9003d966da26d53a0 100644 (file)
@@ -56,6 +56,7 @@
 #define VIRTIO_NET_F_MQ        22      /* Device supports Receive Flow
                                         * Steering */
 #define VIRTIO_NET_F_CTRL_MAC_ADDR 23  /* Set MAC address */
+#define VIRTIO_NET_F_DEVICE_STATS 50   /* Device can provide device-level statistics. */
 #define VIRTIO_NET_F_VQ_NOTF_COAL 52   /* Device supports virtqueue notification coalescing */
 #define VIRTIO_NET_F_NOTF_COAL 53      /* Device supports notifications coalescing */
 #define VIRTIO_NET_F_GUEST_USO4        54      /* Guest can handle USOv4 in. */
@@ -406,4 +407,146 @@ struct  virtio_net_ctrl_coal_vq {
        struct virtio_net_ctrl_coal coal;
 };
 
+/*
+ * Device Statistics
+ */
+#define VIRTIO_NET_CTRL_STATS         8
+#define VIRTIO_NET_CTRL_STATS_QUERY   0
+#define VIRTIO_NET_CTRL_STATS_GET     1
+
+struct virtio_net_stats_capabilities {
+
+#define VIRTIO_NET_STATS_TYPE_CVQ       (1ULL << 32)
+
+#define VIRTIO_NET_STATS_TYPE_RX_BASIC  (1ULL << 0)
+#define VIRTIO_NET_STATS_TYPE_RX_CSUM   (1ULL << 1)
+#define VIRTIO_NET_STATS_TYPE_RX_GSO    (1ULL << 2)
+#define VIRTIO_NET_STATS_TYPE_RX_SPEED  (1ULL << 3)
+
+#define VIRTIO_NET_STATS_TYPE_TX_BASIC  (1ULL << 16)
+#define VIRTIO_NET_STATS_TYPE_TX_CSUM   (1ULL << 17)
+#define VIRTIO_NET_STATS_TYPE_TX_GSO    (1ULL << 18)
+#define VIRTIO_NET_STATS_TYPE_TX_SPEED  (1ULL << 19)
+
+       uint64_t supported_stats_types[1];
+};
+
+struct virtio_net_ctrl_queue_stats {
+       struct {
+               uint16_t vq_index;
+               uint16_t reserved[3];
+               uint64_t types_bitmap[1];
+       } stats[1];
+};
+
+struct virtio_net_stats_reply_hdr {
+#define VIRTIO_NET_STATS_TYPE_REPLY_CVQ       32
+
+#define VIRTIO_NET_STATS_TYPE_REPLY_RX_BASIC  0
+#define VIRTIO_NET_STATS_TYPE_REPLY_RX_CSUM   1
+#define VIRTIO_NET_STATS_TYPE_REPLY_RX_GSO    2
+#define VIRTIO_NET_STATS_TYPE_REPLY_RX_SPEED  3
+
+#define VIRTIO_NET_STATS_TYPE_REPLY_TX_BASIC  16
+#define VIRTIO_NET_STATS_TYPE_REPLY_TX_CSUM   17
+#define VIRTIO_NET_STATS_TYPE_REPLY_TX_GSO    18
+#define VIRTIO_NET_STATS_TYPE_REPLY_TX_SPEED  19
+       uint8_t type;
+       uint8_t reserved;
+       uint16_t vq_index;
+       uint16_t reserved1;
+       uint16_t size;
+};
+
+struct virtio_net_stats_cvq {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t command_num;
+       uint64_t ok_num;
+};
+
+struct virtio_net_stats_rx_basic {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t rx_notifications;
+
+       uint64_t rx_packets;
+       uint64_t rx_bytes;
+
+       uint64_t rx_interrupts;
+
+       uint64_t rx_drops;
+       uint64_t rx_drop_overruns;
+};
+
+struct virtio_net_stats_tx_basic {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t tx_notifications;
+
+       uint64_t tx_packets;
+       uint64_t tx_bytes;
+
+       uint64_t tx_interrupts;
+
+       uint64_t tx_drops;
+       uint64_t tx_drop_malformed;
+};
+
+struct virtio_net_stats_rx_csum {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t rx_csum_valid;
+       uint64_t rx_needs_csum;
+       uint64_t rx_csum_none;
+       uint64_t rx_csum_bad;
+};
+
+struct virtio_net_stats_tx_csum {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t tx_csum_none;
+       uint64_t tx_needs_csum;
+};
+
+struct virtio_net_stats_rx_gso {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t rx_gso_packets;
+       uint64_t rx_gso_bytes;
+       uint64_t rx_gso_packets_coalesced;
+       uint64_t rx_gso_bytes_coalesced;
+};
+
+struct virtio_net_stats_tx_gso {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       uint64_t tx_gso_packets;
+       uint64_t tx_gso_bytes;
+       uint64_t tx_gso_segments;
+       uint64_t tx_gso_segments_bytes;
+       uint64_t tx_gso_packets_noseg;
+       uint64_t tx_gso_bytes_noseg;
+};
+
+struct virtio_net_stats_rx_speed {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       /* rx_{packets,bytes}_allowance_exceeded are too long. So rename to
+        * short name.
+        */
+       uint64_t rx_ratelimit_packets;
+       uint64_t rx_ratelimit_bytes;
+};
+
+struct virtio_net_stats_tx_speed {
+       struct virtio_net_stats_reply_hdr hdr;
+
+       /* tx_{packets,bytes}_allowance_exceeded are too long. So rename to
+        * short name.
+        */
+       uint64_t tx_ratelimit_packets;
+       uint64_t tx_ratelimit_bytes;
+};
+
 #endif /* _LINUX_VIRTIO_NET_H */
index 54b7485390d3149b7180242f5810a810a89c0a20..b1150944316fc616580724dd15e835775590b1ba 100644 (file)
@@ -3,7 +3,10 @@
 #ifndef __PVPANIC_H__
 #define __PVPANIC_H__
 
-#define PVPANIC_PANICKED       (1 << 0)
-#define PVPANIC_CRASH_LOADED   (1 << 1)
+#include "standard-headers/linux/const.h"
+
+#define PVPANIC_PANICKED       _BITUL(0)
+#define PVPANIC_CRASH_LOADED   _BITUL(1)
+#define PVPANIC_SHUTDOWN       _BITUL(2)
 
 #endif /* __PVPANIC_H__ */
index 75f00965ab1586cd64d00928217596de5034bd25..d983c48a3b6af1753108a43ad95eb839e95e5e6b 100644 (file)
@@ -842,8 +842,11 @@ __SYSCALL(__NR_lsm_set_self_attr, sys_lsm_set_self_attr)
 #define __NR_lsm_list_modules 461
 __SYSCALL(__NR_lsm_list_modules, sys_lsm_list_modules)
 
+#define __NR_mseal 462
+__SYSCALL(__NR_mseal, sys_mseal)
+
 #undef __NR_syscalls
-#define __NR_syscalls 462
+#define __NR_syscalls 463
 
 /*
  * 32 bit systems traditionally used different
index ce2e050a9ba4675e82278a4408d522d31f7ca093..fc93b3be3091f65b925be6147b3962cd0e64ab72 100644 (file)
 #define __NR_lsm_get_self_attr (__NR_Linux + 459)
 #define __NR_lsm_set_self_attr (__NR_Linux + 460)
 #define __NR_lsm_list_modules (__NR_Linux + 461)
+#define __NR_mseal (__NR_Linux + 462)
 
 #endif /* _ASM_UNISTD_N32_H */
index 5bfb3733ffdfce0cc7637713df162d153adf6fe5..e72a3eb2c9373a38dcfe07ea2daf70f2ca53134c 100644 (file)
 #define __NR_lsm_get_self_attr (__NR_Linux + 459)
 #define __NR_lsm_set_self_attr (__NR_Linux + 460)
 #define __NR_lsm_list_modules (__NR_Linux + 461)
+#define __NR_mseal (__NR_Linux + 462)
 
 #endif /* _ASM_UNISTD_N64_H */
index 02eaecd020ec2cb0ae83f48f46aa47300e6f95d5..b86eb0786c7640beef3582471be300cebc45912f 100644 (file)
 #define __NR_lsm_get_self_attr (__NR_Linux + 459)
 #define __NR_lsm_set_self_attr (__NR_Linux + 460)
 #define __NR_lsm_list_modules (__NR_Linux + 461)
+#define __NR_mseal (__NR_Linux + 462)
 
 #endif /* _ASM_UNISTD_O32_H */
index bbab08d6ec267e4d20eec63d0385323900334955..28627b6546f2528d39254386c8f5ec6f3dd5d9e4 100644 (file)
 #define __NR_lsm_get_self_attr 459
 #define __NR_lsm_set_self_attr 460
 #define __NR_lsm_list_modules 461
+#define __NR_mseal 462
 
 
 #endif /* _ASM_UNISTD_32_H */
index af34cde70f20fa1320d00f93b700dd7ab8f83b5a..1fc42a83004627074425e8870c7d23e8fceee975 100644 (file)
 #define __NR_lsm_get_self_attr 459
 #define __NR_lsm_set_self_attr 460
 #define __NR_lsm_list_modules 461
+#define __NR_mseal 462
 
 
 #endif /* _ASM_UNISTD_64_H */
index a3ece69d8241fc71cbb3e4820ce2cbd03129e9a6..7706c21b87e2787f15eecc7ba3ac3c477a720c8f 100644 (file)
 #define __NR_lsm_get_self_attr 459
 #define __NR_lsm_set_self_attr 460
 #define __NR_lsm_list_modules 461
+#define __NR_mseal 462
 
 #endif /* _ASM_S390_UNISTD_32_H */
index 8c5fd93495ce86a670d024dcc152949430ac5dbe..62082d592d35765b7bd348f8af95c5cf6830ee0f 100644 (file)
 #define __NR_lsm_get_self_attr 459
 #define __NR_lsm_set_self_attr 460
 #define __NR_lsm_list_modules 461
+#define __NR_mseal 462
 
 #endif /* _ASM_S390_UNISTD_64_H */
index 5c9c329e9390eedcb76b0baa7353acbf46f8228c..fb7b8b169bfa65edfffa73d33c85db786780062e 100644 (file)
 #define __NR_lsm_get_self_attr 459
 #define __NR_lsm_set_self_attr 460
 #define __NR_lsm_list_modules 461
+#define __NR_mseal 462
 
 
 #endif /* _ASM_UNISTD_32_H */
index d9aab7ae87d8648313e3e19c23b419d949de3824..da439afee1cfb2897bfc511de47b38459f32ee68 100644 (file)
 #define __NR_lsm_get_self_attr 459
 #define __NR_lsm_set_self_attr 460
 #define __NR_lsm_list_modules 461
+#define __NR_mseal 462
 
 
 #endif /* _ASM_UNISTD_64_H */
index 63cdd1ee43dfeb67e72dbaaf098b4187b3b83525..4fcb607c724b1d84f4e9ac0c8dcea272a09a54d1 100644 (file)
 #define __NR_set_mempolicy_home_node (__X32_SYSCALL_BIT + 450)
 #define __NR_cachestat (__X32_SYSCALL_BIT + 451)
 #define __NR_fchmodat2 (__X32_SYSCALL_BIT + 452)
+#define __NR_map_shadow_stack (__X32_SYSCALL_BIT + 453)
 #define __NR_futex_wake (__X32_SYSCALL_BIT + 454)
 #define __NR_futex_wait (__X32_SYSCALL_BIT + 455)
 #define __NR_futex_requeue (__X32_SYSCALL_BIT + 456)
 #define __NR_lsm_get_self_attr (__X32_SYSCALL_BIT + 459)
 #define __NR_lsm_set_self_attr (__X32_SYSCALL_BIT + 460)
 #define __NR_lsm_list_modules (__X32_SYSCALL_BIT + 461)
+#define __NR_mseal (__X32_SYSCALL_BIT + 462)
 #define __NR_rt_sigaction (__X32_SYSCALL_BIT + 512)
 #define __NR_rt_sigreturn (__X32_SYSCALL_BIT + 513)
 #define __NR_ioctl (__X32_SYSCALL_BIT + 514)
index 038731cdef26c78eb336fef04faad62a325099a1..c93876ca0ba939b2ed87cf9d3b9e34f91d8b7d08 100644 (file)
@@ -1217,9 +1217,9 @@ struct kvm_vfio_spapr_tce {
 /* Available with KVM_CAP_SPAPR_RESIZE_HPT */
 #define KVM_PPC_RESIZE_HPT_PREPARE _IOR(KVMIO, 0xad, struct kvm_ppc_resize_hpt)
 #define KVM_PPC_RESIZE_HPT_COMMIT  _IOR(KVMIO, 0xae, struct kvm_ppc_resize_hpt)
-/* Available with KVM_CAP_PPC_RADIX_MMU or KVM_CAP_PPC_HASH_MMU_V3 */
+/* Available with KVM_CAP_PPC_MMU_RADIX or KVM_CAP_PPC_MMU_HASH_V3 */
 #define KVM_PPC_CONFIGURE_V3_MMU  _IOW(KVMIO,  0xaf, struct kvm_ppc_mmuv3_cfg)
-/* Available with KVM_CAP_PPC_RADIX_MMU */
+/* Available with KVM_CAP_PPC_MMU_RADIX */
 #define KVM_PPC_GET_RMMU_INFO    _IOW(KVMIO,  0xb0, struct kvm_ppc_rmmu_info)
 /* Available with KVM_CAP_PPC_GET_CPU_CHAR */
 #define KVM_PPC_GET_CPU_CHAR     _IOR(KVMIO,  0xb1, struct kvm_ppc_cpu_char)
index bf9749dd1422607dd57e1f64b8a39f0b32ab0ede..96aa341942b05003e605c05d69bc68b0eb528b2e 100644 (file)
 #define __counted_by(m)
 #endif
 
+#ifndef __counted_by_le
+#define __counted_by_le(m)
+#endif
+
+#ifndef __counted_by_be
+#define __counted_by_be(m)
+#endif
+
 #endif /* _LINUX_STDDEF_H */