diff --git a/0001-rings-add-support-to-set-get-rx-buf-len.patch b/0001-rings-add-support-to-set-get-rx-buf-len.patch deleted file mode 100644 index 2b01c7782024397e6abe38df313b2e0cbdae66e0..0000000000000000000000000000000000000000 --- a/0001-rings-add-support-to-set-get-rx-buf-len.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 327b1f6ced24f63f16472c666b48e0af9e7b0039 Mon Sep 17 00:00:00 2001 -From: Hao Chen -Date: Mon, 20 Dec 2021 16:31:54 +0800 -Subject: rings: add support to set/get rx buf len - -Add support for "ethtool -G rx-buf-len xxx" and "ethtool -g " -to set/get rx-buf-len. - -commit: a081c2a -Reference: https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?h=v5.19&id=a081c2a5216a - -Signed-off-by: Hao Chen -Signed-off-by: Guangbin Huang ---- - ethtool.c | 1 + - netlink/rings.c | 7 +++++++ - 2 files changed, 8 insertions(+) - -diff --git a/ethtool.c b/ethtool.c -index 46887c7..43f266e 100644 ---- a/ethtool.c -+++ b/ethtool.c -@@ -5724,6 +5724,7 @@ static const struct option args[] = { - " [ rx-mini N ]\n" - " [ rx-jumbo N ]\n" - " [ tx N ]\n" -+ " [ rx-buf-len N]\n" - }, - { - .opts = "-k|--show-features|--show-offload", -diff --git a/netlink/rings.c b/netlink/rings.c -index b8c458f..119178e 100644 ---- a/netlink/rings.c -+++ b/netlink/rings.c -@@ -46,6 +46,7 @@ int rings_reply_cb(const struct nlmsghdr *nlhdr, void *data) - show_u32(tb[ETHTOOL_A_RINGS_RX_MINI], "RX Mini:\t"); - show_u32(tb[ETHTOOL_A_RINGS_RX_JUMBO], "RX Jumbo:\t"); - show_u32(tb[ETHTOOL_A_RINGS_TX], "TX:\t\t"); -+ show_u32(tb[ETHTOOL_A_RINGS_RX_BUF_LEN], "RX Buf Len:\t\t"); - - return MNL_CB_OK; - } -@@ -98,6 +99,12 @@ static const struct param_parser sring_params[] = { - .handler = nl_parse_direct_u32, - .min_argc = 1, - }, -+ { -+ .arg = "rx-buf-len", -+ .type = ETHTOOL_A_RINGS_RX_BUF_LEN, -+ .handler = nl_parse_direct_u32, -+ .min_argc = 1, -+ }, - {} - }; - --- -2.33.0 - diff --git a/0002-tunables-add-support-to-get-set-tx-copybreak-buf-siz.patch b/0002-tunables-add-support-to-get-set-tx-copybreak-buf-siz.patch deleted file mode 100644 index 071e20773ed325df9f72f49a01924d6d2232e898..0000000000000000000000000000000000000000 --- a/0002-tunables-add-support-to-get-set-tx-copybreak-buf-siz.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 53375183f19f8a6e6b6a3fc5776013aaf1bed23a Mon Sep 17 00:00:00 2001 -From: Hao Chen -Date: Mon, 20 Dec 2021 16:31:55 +0800 -Subject: tunables: add support to get/set tx copybreak buf size - -Add support for "ethtool --set-tunable tx-buf-size xxx" -and "ethtool --get-tunable tx-buf-size" to set/get -tx copybreak buf size. - -commit: 51a9312 -Reference: https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?id=51a9312cc250 - -Signed-off-by: Hao Chen -Signed-off-by: Guangbin Huang ---- - ethtool.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/ethtool.c b/ethtool.c -index 43f266e..040e911 100644 ---- a/ethtool.c -+++ b/ethtool.c -@@ -5009,6 +5009,7 @@ tunable_strings[__ETHTOOL_TUNABLE_COUNT][ETH_GSTRING_LEN] = { - [ETHTOOL_ID_UNSPEC] = "Unspec", - [ETHTOOL_RX_COPYBREAK] = "rx-copybreak", - [ETHTOOL_TX_COPYBREAK] = "tx-copybreak", -+ [ETHTOOL_TX_COPYBREAK_BUF_SIZE] = "tx-buf-size", - [ETHTOOL_PFC_PREVENTION_TOUT] = "pfc-prevention-tout", - }; - -@@ -5048,6 +5049,11 @@ static struct ethtool_tunable_info tunables_info[] = { - .size = sizeof(u16), - .type = CMDL_U16, - }, -+ { .t_id = ETHTOOL_TX_COPYBREAK_BUF_SIZE, -+ .t_type_id = ETHTOOL_TUNABLE_U32, -+ .size = sizeof(u32), -+ .type = CMDL_U32, -+ }, - }; - #define TUNABLES_INFO_SIZE ARRAY_SIZE(tunables_info) - -@@ -5961,6 +5967,7 @@ static const struct option args[] = { - .help = "Get tunable", - .xhelp = " [ rx-copybreak ]\n" - " [ tx-copybreak ]\n" -+ " [ tx-buf-size ]\n" - " [ pfc-precention-tout ]\n" - }, - { -@@ -5969,6 +5976,7 @@ static const struct option args[] = { - .help = "Set tunable", - .xhelp = " [ rx-copybreak N]\n" - " [ tx-copybreak N]\n" -+ " [ tx-buf-size N]\n" - " [ pfc-precention-tout N]\n" - }, - { --- -2.33.0 - diff --git a/0003-update-UAPI-header-copies.patch b/0003-update-UAPI-header-copies.patch deleted file mode 100644 index a5b318f7e26739ec402c583f96b8bbffcbf1b421..0000000000000000000000000000000000000000 --- a/0003-update-UAPI-header-copies.patch +++ /dev/null @@ -1,345 +0,0 @@ -From 6428870f54e7107c2f37202f14818ebab0112e5f Mon Sep 17 00:00:00 2001 -From: Jie Wang -Date: Fri, 29 Apr 2022 17:17:03 +0800 -Subject: update UAPI header copies - -Update to kernel commit cc4bdef26ecd. - -commit: bd138ee -Reference: https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?id=bd138ee083c4 -change log: Some macros for rx buf len in other patch. To avoid add -unnecrssary content, add like "ETHTOOL_TX_COPYBREAK_BUF_SIZE" -"ETHTOOL_A_RINGS_RX_BUF_LEN" "IFLA_BOND_MISSED_MAX" in this patch - -Signed-off-by: Jie Wang ---- - uapi/linux/ethtool.h | 1 + - uapi/linux/ethtool_netlink.h | 10 ++++ - uapi/linux/if_link.h | 98 ++++++++++++++++++++++++++++++++++++ - uapi/linux/net_tstamp.h | 17 ++++++- - uapi/linux/netlink.h | 1 + - uapi/linux/rtnetlink.h | 16 ++++++ - 6 files changed, 142 insertions(+), 1 deletion(-) - -diff --git a/uapi/linux/ethtool.h b/uapi/linux/ethtool.h -index a7f549a..4a36287 100644 ---- a/uapi/linux/ethtool.h -+++ b/uapi/linux/ethtool.h -@@ -229,6 +229,7 @@ enum tunable_id { - ETHTOOL_RX_COPYBREAK, - ETHTOOL_TX_COPYBREAK, - ETHTOOL_PFC_PREVENTION_TOUT, /* timeout in msecs */ -+ ETHTOOL_TX_COPYBREAK_BUF_SIZE, - /* - * Add your fresh new tunable attribute above and remember to update - * tunable_strings[] in net/ethtool/common.c -diff --git a/uapi/linux/ethtool_netlink.h b/uapi/linux/ethtool_netlink.h -index 5665d64..aaadce7 100644 ---- a/uapi/linux/ethtool_netlink.h -+++ b/uapi/linux/ethtool_netlink.h -@@ -314,6 +314,12 @@ enum { - - /* RINGS */ - -+enum { -+ ETHTOOL_TCP_DATA_SPLIT_UNKNOWN = 0, -+ ETHTOOL_TCP_DATA_SPLIT_DISABLED, -+ ETHTOOL_TCP_DATA_SPLIT_ENABLED, -+}; -+ - enum { - ETHTOOL_A_RINGS_UNSPEC, - ETHTOOL_A_RINGS_HEADER, /* nest - _A_HEADER_* */ -@@ -325,6 +331,10 @@ enum { - ETHTOOL_A_RINGS_RX_MINI, /* u32 */ - ETHTOOL_A_RINGS_RX_JUMBO, /* u32 */ - ETHTOOL_A_RINGS_TX, /* u32 */ -+ ETHTOOL_A_RINGS_RX_BUF_LEN, /* u32 */ -+ ETHTOOL_A_RINGS_TCP_DATA_SPLIT, /* u8 */ -+ ETHTOOL_A_RINGS_CQE_SIZE, /* u32 */ -+ ETHTOOL_A_RINGS_TX_PUSH, /* u8 */ - - /* add new constants above here */ - __ETHTOOL_A_RINGS_CNT, -diff --git a/uapi/linux/if_link.h b/uapi/linux/if_link.h -index 1d4ed60..34002e7 100644 ---- a/uapi/linux/if_link.h -+++ b/uapi/linux/if_link.h -@@ -211,6 +211,9 @@ struct rtnl_link_stats { - * @rx_nohandler: Number of packets received on the interface - * but dropped by the networking stack because the device is - * not designated to receive packets (e.g. backup link in a bond). -+ * -+ * @rx_otherhost_dropped: Number of packets dropped due to mismatch -+ * in destination MAC address. - */ - struct rtnl_link_stats64 { - __u64 rx_packets; -@@ -243,6 +246,23 @@ struct rtnl_link_stats64 { - __u64 rx_compressed; - __u64 tx_compressed; - __u64 rx_nohandler; -+ -+ __u64 rx_otherhost_dropped; -+}; -+ -+/* Subset of link stats useful for in-HW collection. Meaning of the fields is as -+ * for struct rtnl_link_stats64. -+ */ -+struct rtnl_hw_stats64 { -+ __u64 rx_packets; -+ __u64 tx_packets; -+ __u64 rx_bytes; -+ __u64 tx_bytes; -+ __u64 rx_errors; -+ __u64 tx_errors; -+ __u64 rx_dropped; -+ __u64 tx_dropped; -+ __u64 multicast; - }; - - /* The struct should be in sync with struct ifmap */ -@@ -347,6 +367,7 @@ enum { - */ - IFLA_PARENT_DEV_NAME, - IFLA_PARENT_DEV_BUS_NAME, -+ IFLA_GRO_MAX_SIZE, - - __IFLA_MAX - }; -@@ -534,6 +555,7 @@ enum { - IFLA_BRPORT_MRP_IN_OPEN, - IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT, - IFLA_BRPORT_MCAST_EHT_HOSTS_CNT, -+ IFLA_BRPORT_LOCKED, - __IFLA_BRPORT_MAX - }; - #define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1) -@@ -709,7 +731,55 @@ enum ipvlan_mode { - #define IPVLAN_F_PRIVATE 0x01 - #define IPVLAN_F_VEPA 0x02 - -+/* Tunnel RTM header */ -+struct tunnel_msg { -+ __u8 family; -+ __u8 flags; -+ __u16 reserved2; -+ __u32 ifindex; -+}; -+ - /* VXLAN section */ -+ -+/* include statistics in the dump */ -+#define TUNNEL_MSG_FLAG_STATS 0x01 -+ -+#define TUNNEL_MSG_VALID_USER_FLAGS TUNNEL_MSG_FLAG_STATS -+ -+/* Embedded inside VXLAN_VNIFILTER_ENTRY_STATS */ -+enum { -+ VNIFILTER_ENTRY_STATS_UNSPEC, -+ VNIFILTER_ENTRY_STATS_RX_BYTES, -+ VNIFILTER_ENTRY_STATS_RX_PKTS, -+ VNIFILTER_ENTRY_STATS_RX_DROPS, -+ VNIFILTER_ENTRY_STATS_RX_ERRORS, -+ VNIFILTER_ENTRY_STATS_TX_BYTES, -+ VNIFILTER_ENTRY_STATS_TX_PKTS, -+ VNIFILTER_ENTRY_STATS_TX_DROPS, -+ VNIFILTER_ENTRY_STATS_TX_ERRORS, -+ VNIFILTER_ENTRY_STATS_PAD, -+ __VNIFILTER_ENTRY_STATS_MAX -+}; -+#define VNIFILTER_ENTRY_STATS_MAX (__VNIFILTER_ENTRY_STATS_MAX - 1) -+ -+enum { -+ VXLAN_VNIFILTER_ENTRY_UNSPEC, -+ VXLAN_VNIFILTER_ENTRY_START, -+ VXLAN_VNIFILTER_ENTRY_END, -+ VXLAN_VNIFILTER_ENTRY_GROUP, -+ VXLAN_VNIFILTER_ENTRY_GROUP6, -+ VXLAN_VNIFILTER_ENTRY_STATS, -+ __VXLAN_VNIFILTER_ENTRY_MAX -+}; -+#define VXLAN_VNIFILTER_ENTRY_MAX (__VXLAN_VNIFILTER_ENTRY_MAX - 1) -+ -+enum { -+ VXLAN_VNIFILTER_UNSPEC, -+ VXLAN_VNIFILTER_ENTRY, -+ __VXLAN_VNIFILTER_MAX -+}; -+#define VXLAN_VNIFILTER_MAX (__VXLAN_VNIFILTER_MAX - 1) -+ - enum { - IFLA_VXLAN_UNSPEC, - IFLA_VXLAN_ID, -@@ -741,6 +811,7 @@ enum { - IFLA_VXLAN_GPE, - IFLA_VXLAN_TTL_INHERIT, - IFLA_VXLAN_DF, -+ IFLA_VXLAN_VNIFILTER, /* only applicable with COLLECT_METADATA mode */ - __IFLA_VXLAN_MAX - }; - #define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1) -@@ -774,6 +845,7 @@ enum { - IFLA_GENEVE_LABEL, - IFLA_GENEVE_TTL_INHERIT, - IFLA_GENEVE_DF, -+ IFLA_GENEVE_INNER_PROTO_INHERIT, - __IFLA_GENEVE_MAX - }; - #define IFLA_GENEVE_MAX (__IFLA_GENEVE_MAX - 1) -@@ -819,6 +891,8 @@ enum { - IFLA_GTP_FD1, - IFLA_GTP_PDP_HASHSIZE, - IFLA_GTP_ROLE, -+ IFLA_GTP_CREATE_SOCKETS, -+ IFLA_GTP_RESTART_COUNT, - __IFLA_GTP_MAX, - }; - #define IFLA_GTP_MAX (__IFLA_GTP_MAX - 1) -@@ -856,6 +930,8 @@ enum { - IFLA_BOND_TLB_DYNAMIC_LB, - IFLA_BOND_PEER_NOTIF_DELAY, - IFLA_BOND_AD_LACP_ACTIVE, -+ IFLA_BOND_MISSED_MAX, -+ IFLA_BOND_NS_IP6_TARGET, - __IFLA_BOND_MAX, - }; - -@@ -1152,6 +1228,17 @@ enum { - - #define IFLA_STATS_FILTER_BIT(ATTR) (1 << (ATTR - 1)) - -+enum { -+ IFLA_STATS_GETSET_UNSPEC, -+ IFLA_STATS_GET_FILTERS, /* Nest of IFLA_STATS_LINK_xxx, each a u32 with -+ * a filter mask for the corresponding group. -+ */ -+ IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS, /* 0 or 1 as u8 */ -+ __IFLA_STATS_GETSET_MAX, -+}; -+ -+#define IFLA_STATS_GETSET_MAX (__IFLA_STATS_GETSET_MAX - 1) -+ - /* These are embedded into IFLA_STATS_LINK_XSTATS: - * [IFLA_STATS_LINK_XSTATS] - * -> [LINK_XSTATS_TYPE_xxx] -@@ -1169,10 +1256,21 @@ enum { - enum { - IFLA_OFFLOAD_XSTATS_UNSPEC, - IFLA_OFFLOAD_XSTATS_CPU_HIT, /* struct rtnl_link_stats64 */ -+ IFLA_OFFLOAD_XSTATS_HW_S_INFO, /* HW stats info. A nest */ -+ IFLA_OFFLOAD_XSTATS_L3_STATS, /* struct rtnl_hw_stats64 */ - __IFLA_OFFLOAD_XSTATS_MAX - }; - #define IFLA_OFFLOAD_XSTATS_MAX (__IFLA_OFFLOAD_XSTATS_MAX - 1) - -+enum { -+ IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC, -+ IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST, /* u8 */ -+ IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED, /* u8 */ -+ __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX, -+}; -+#define IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX \ -+ (__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX - 1) -+ - /* XDP section */ - - #define XDP_FLAGS_UPDATE_IF_NOEXIST (1U << 0) -diff --git a/uapi/linux/net_tstamp.h b/uapi/linux/net_tstamp.h -index fcc61c7..55501e5 100644 ---- a/uapi/linux/net_tstamp.h -+++ b/uapi/linux/net_tstamp.h -@@ -62,7 +62,7 @@ struct so_timestamping { - /** - * struct hwtstamp_config - %SIOCGHWTSTAMP and %SIOCSHWTSTAMP parameter - * -- * @flags: no flags defined right now, must be zero for %SIOCSHWTSTAMP -+ * @flags: one of HWTSTAMP_FLAG_* - * @tx_type: one of HWTSTAMP_TX_* - * @rx_filter: one of HWTSTAMP_FILTER_* - * -@@ -78,6 +78,21 @@ struct hwtstamp_config { - int rx_filter; - }; - -+/* possible values for hwtstamp_config->flags */ -+enum hwtstamp_flags { -+ /* -+ * With this flag, the user could get bond active interface's -+ * PHC index. Note this PHC index is not stable as when there -+ * is a failover, the bond active interface will be changed, so -+ * will be the PHC index. -+ */ -+ HWTSTAMP_FLAG_BONDED_PHC_INDEX = (1<<0), -+#define HWTSTAMP_FLAG_BONDED_PHC_INDEX HWTSTAMP_FLAG_BONDED_PHC_INDEX -+ -+ HWTSTAMP_FLAG_LAST = HWTSTAMP_FLAG_BONDED_PHC_INDEX, -+ HWTSTAMP_FLAG_MASK = (HWTSTAMP_FLAG_LAST - 1) | HWTSTAMP_FLAG_LAST -+}; -+ - /* possible values for hwtstamp_config->tx_type */ - enum hwtstamp_tx_types { - /* -diff --git a/uapi/linux/netlink.h b/uapi/linux/netlink.h -index e83e2e3..105b79f 100644 ---- a/uapi/linux/netlink.h -+++ b/uapi/linux/netlink.h -@@ -72,6 +72,7 @@ struct nlmsghdr { - - /* Modifiers to DELETE request */ - #define NLM_F_NONREC 0x100 /* Do not delete recursively */ -+#define NLM_F_BULK 0x200 /* Delete multiple objects */ - - /* Flags for ACK message */ - #define NLM_F_CAPPED 0x100 /* request was capped */ -diff --git a/uapi/linux/rtnetlink.h b/uapi/linux/rtnetlink.h -index e01efa2..8f874be 100644 ---- a/uapi/linux/rtnetlink.h -+++ b/uapi/linux/rtnetlink.h -@@ -146,6 +146,8 @@ enum { - #define RTM_NEWSTATS RTM_NEWSTATS - RTM_GETSTATS = 94, - #define RTM_GETSTATS RTM_GETSTATS -+ RTM_SETSTATS, -+#define RTM_SETSTATS RTM_SETSTATS - - RTM_NEWCACHEREPORT = 96, - #define RTM_NEWCACHEREPORT RTM_NEWCACHEREPORT -@@ -185,6 +187,13 @@ enum { - RTM_GETNEXTHOPBUCKET, - #define RTM_GETNEXTHOPBUCKET RTM_GETNEXTHOPBUCKET - -+ RTM_NEWTUNNEL = 120, -+#define RTM_NEWTUNNEL RTM_NEWTUNNEL -+ RTM_DELTUNNEL, -+#define RTM_DELTUNNEL RTM_DELTUNNEL -+ RTM_GETTUNNEL, -+#define RTM_GETTUNNEL RTM_GETTUNNEL -+ - __RTM_MAX, - #define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1) - }; -@@ -752,6 +761,12 @@ enum rtnetlink_groups { - #define RTNLGRP_NEXTHOP RTNLGRP_NEXTHOP - RTNLGRP_BRVLAN, - #define RTNLGRP_BRVLAN RTNLGRP_BRVLAN -+ RTNLGRP_MCTP_IFADDR, -+#define RTNLGRP_MCTP_IFADDR RTNLGRP_MCTP_IFADDR -+ RTNLGRP_TUNNEL, -+#define RTNLGRP_TUNNEL RTNLGRP_TUNNEL -+ RTNLGRP_STATS, -+#define RTNLGRP_STATS RTNLGRP_STATS - __RTNLGRP_MAX - }; - #define RTNLGRP_MAX (__RTNLGRP_MAX - 1) -@@ -800,6 +815,7 @@ enum { - #define RTEXT_FILTER_MRP (1 << 4) - #define RTEXT_FILTER_CFM_CONFIG (1 << 5) - #define RTEXT_FILTER_CFM_STATUS (1 << 6) -+#define RTEXT_FILTER_MST (1 << 7) - - /* End of information exported to user level */ - --- -2.33.0 - diff --git a/0004-ethtool-add-support-to-get-set-tx-push-by-ethtool-G-.patch b/0004-ethtool-add-support-to-get-set-tx-push-by-ethtool-G-.patch deleted file mode 100644 index ea01e97423a487235ed909a0cba38108ba446af3..0000000000000000000000000000000000000000 --- a/0004-ethtool-add-support-to-get-set-tx-push-by-ethtool-G-.patch +++ /dev/null @@ -1,92 +0,0 @@ -From 0a0460a0e7c3d862a577fd048375f2ab0a024a97 Mon Sep 17 00:00:00 2001 -From: Jie Wang -Date: Fri, 29 Apr 2022 17:17:04 +0800 -Subject: ethtool: add support to get/set tx push by ethtool -G/g - -Currently tx push is a standard feature for NICs such as Mellanox, HNS3. -But there is no command to set or get this feature. - -So this patch adds support for "ethtool -G tx-push on|off" and -"ethtool -g " to set/get tx push mode. - -commit: d772518 -Reference: https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?id=d77251806eaa -change log: use tab instead of space before [rx-buf-len]; To avoid -add other content, add missing content for rx buf len, like ".BN -rx\-buf\len" - -Signed-off-by: Jie Wang ---- - ethtool.8.in | 8 ++++++++ - ethtool.c | 3 ++- - netlink/rings.c | 7 +++++++ - 3 files changed, 17 insertions(+), 1 deletion(-) - -diff --git a/ethtool.8.in b/ethtool.8.in -index d2c7e5c..af1c5bc 100644 ---- a/ethtool.8.in -+++ b/ethtool.8.in -@@ -198,6 +198,8 @@ ethtool \- query or control network driver and hardware settings - .BN rx\-mini - .BN rx\-jumbo - .BN tx -+.BN rx\-buf\-len -+.BN tx\-push - .HP - .B ethtool \-i|\-\-driver - .I devname -@@ -559,6 +561,12 @@ Changes the number of ring entries for the Rx Jumbo ring. - .TP - .BI tx \ N - Changes the number of ring entries for the Tx ring. -+.TP -+.BI rx\-buf\-len \ N -+Changes the size of a buffer in the Rx ring. -+.TP -+.BI tx\-push \ on|off -+Specifies whether TX push should be enabled. - .RE - .TP - .B \-i \-\-driver -diff --git a/ethtool.c b/ethtool.c -index 040e911..46250eb 100644 ---- a/ethtool.c -+++ b/ethtool.c -@@ -5730,7 +5730,8 @@ static const struct option args[] = { - " [ rx-mini N ]\n" - " [ rx-jumbo N ]\n" - " [ tx N ]\n" -- " [ rx-buf-len N]\n" -+ " [ rx-buf-len N]\n" -+ " [ tx-push on|off]\n" - }, - { - .opts = "-k|--show-features|--show-offload", -diff --git a/netlink/rings.c b/netlink/rings.c -index 119178e..3718c10 100644 ---- a/netlink/rings.c -+++ b/netlink/rings.c -@@ -47,6 +47,7 @@ int rings_reply_cb(const struct nlmsghdr *nlhdr, void *data) - show_u32(tb[ETHTOOL_A_RINGS_RX_JUMBO], "RX Jumbo:\t"); - show_u32(tb[ETHTOOL_A_RINGS_TX], "TX:\t\t"); - show_u32(tb[ETHTOOL_A_RINGS_RX_BUF_LEN], "RX Buf Len:\t\t"); -+ show_bool("tx-push", "TX Push:\t%s\n", tb[ETHTOOL_A_RINGS_TX_PUSH]); - - return MNL_CB_OK; - } -@@ -105,6 +106,12 @@ static const struct param_parser sring_params[] = { - .handler = nl_parse_direct_u32, - .min_argc = 1, - }, -+ { -+ .arg = "tx-push", -+ .type = ETHTOOL_A_RINGS_TX_PUSH, -+ .handler = nl_parse_u8bool, -+ .min_argc = 1, -+ }, - {} - }; - --- -2.33.0 - diff --git a/backport-ioctl-add-the-memory-free-operation-after-send_ioctl.patch b/backport-ioctl-add-the-memory-free-operation-after-send_ioctl.patch deleted file mode 100644 index 96720c112a51b1ec915367dfa4eafabbba7a579f..0000000000000000000000000000000000000000 --- a/backport-ioctl-add-the-memory-free-operation-after-send_ioctl.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 8fd02a2f5bd552894ef415b7e5c525be6bc6c3e3 Mon Sep 17 00:00:00 2001 -From: Jie Wang -Date: Mon, 7 Mar 2022 16:08:56 +0800 -Subject: [PATCH] ioctl: add the memory free operation after send_ioctl call - fails - -The memory is not freed after send_ioctl fails in function do_gtunable and -do_stunable. This will cause memory leaks. - -So this patch adds memory free operation after send_ioctl call fails. - -Fixes: b717ed22d984 ("ethtool: add support for get/set ethtool_tunable") -Signed-off-by: Jie Wang ---- - ethtool.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/ethtool.c b/ethtool.c -index 28ecf69..4f5c234 100644 ---- a/ethtool.c -+++ b/ethtool.c -@@ -5097,6 +5097,7 @@ static int do_stunable(struct cmd_context *ctx) - ret = send_ioctl(ctx, tuna); - if (ret) { - perror(tunable_strings[tuna->id]); -+ free(tuna); - return ret; - } - free(tuna); -@@ -5174,6 +5175,7 @@ static int do_gtunable(struct cmd_context *ctx) - ret = send_ioctl(ctx, tuna); - if (ret) { - fprintf(stderr, "%s: Cannot get tunable\n", ts); -+ free(tuna); - return ret; - } - print_tunable(tuna); --- -2.33.0 - diff --git a/ethtool-5.15.tar.xz b/ethtool-5.15.tar.xz deleted file mode 100644 index c2cfaf47783d3fd74cbb312e543f94cdbeb16bc9..0000000000000000000000000000000000000000 Binary files a/ethtool-5.15.tar.xz and /dev/null differ diff --git a/ethtool-5.19.tar.xz b/ethtool-5.19.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..5f8c2a89c18ae4f925d711fcbc03bf30b1adba35 Binary files /dev/null and b/ethtool-5.19.tar.xz differ diff --git a/ethtool.spec b/ethtool.spec index e8c1a1cc3459a2d35b7c55b2d6183d75172c5ed1..1a4cf1e1089a5d94951e7de1988105451ad98bcb 100644 --- a/ethtool.spec +++ b/ethtool.spec @@ -1,18 +1,12 @@ Name: ethtool Epoch: 2 -Version: 5.15 -Release: 3 +Version: 5.19 +Release: 1 Summary: Settings tool for Ethernet NICs License: GPLv2 URL: https://www.kernel.org/pub/software/network/ethtool Source0: https://www.kernel.org/pub/software/network/%{name}/%{name}-%{version}.tar.xz -Patch0: backport-ioctl-add-the-memory-free-operation-after-send_ioctl.patch -Patch1: 0001-rings-add-support-to-set-get-rx-buf-len.patch -Patch2: 0002-tunables-add-support-to-get-set-tx-copybreak-buf-siz.patch -Patch3: 0003-update-UAPI-header-copies.patch -Patch4: 0004-ethtool-add-support-to-get-set-tx-push-by-ethtool-G-.patch - BuildRequires: gcc BuildRequires: libmnl-devel Conflicts: filesystem < 3 @@ -59,6 +53,9 @@ make check %{_mandir}/man8/%{name}.8* %changelog +* Mon Oct 3 2022 tianlijing - 2:5.19-1 +- update to 5.19 + * Tue Sep 20 2022 xiaojiantao - 2:5.15-3 - Type:requirement - Id:NA