Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Minor overlapping changes in xfrm_device.c, between the double ESP trailing bug fix setting the XFRM_INIT flag and the changes in net-next preparing for bonding encryption support. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -234,6 +234,14 @@ static int ethnl_act_cable_test_tdr_cfg(const struct nlattr *nest,
|
||||
struct nlattr *tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX + 1];
|
||||
int ret;
|
||||
|
||||
cfg->first = 100;
|
||||
cfg->step = 100;
|
||||
cfg->last = MAX_CABLE_LENGTH_CM;
|
||||
cfg->pair = PHY_PAIR_ALL;
|
||||
|
||||
if (!nest)
|
||||
return 0;
|
||||
|
||||
ret = nla_parse_nested(tb, ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX, nest,
|
||||
cable_test_tdr_act_cfg_policy, info->extack);
|
||||
if (ret < 0)
|
||||
@@ -242,17 +250,12 @@ static int ethnl_act_cable_test_tdr_cfg(const struct nlattr *nest,
|
||||
if (tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST])
|
||||
cfg->first = nla_get_u32(
|
||||
tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST]);
|
||||
else
|
||||
cfg->first = 100;
|
||||
|
||||
if (tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST])
|
||||
cfg->last = nla_get_u32(tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST]);
|
||||
else
|
||||
cfg->last = MAX_CABLE_LENGTH_CM;
|
||||
|
||||
if (tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP])
|
||||
cfg->step = nla_get_u32(tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP]);
|
||||
else
|
||||
cfg->step = 100;
|
||||
|
||||
if (tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR]) {
|
||||
cfg->pair = nla_get_u8(tb[ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR]);
|
||||
@@ -263,8 +266,6 @@ static int ethnl_act_cable_test_tdr_cfg(const struct nlattr *nest,
|
||||
"invalid pair parameter");
|
||||
return -EINVAL;
|
||||
}
|
||||
} else {
|
||||
cfg->pair = PHY_PAIR_ALL;
|
||||
}
|
||||
|
||||
if (cfg->first > MAX_CABLE_LENGTH_CM) {
|
||||
|
@@ -40,9 +40,11 @@ const char netdev_features_strings[NETDEV_FEATURE_COUNT][ETH_GSTRING_LEN] = {
|
||||
[NETIF_F_GSO_UDP_TUNNEL_BIT] = "tx-udp_tnl-segmentation",
|
||||
[NETIF_F_GSO_UDP_TUNNEL_CSUM_BIT] = "tx-udp_tnl-csum-segmentation",
|
||||
[NETIF_F_GSO_PARTIAL_BIT] = "tx-gso-partial",
|
||||
[NETIF_F_GSO_TUNNEL_REMCSUM_BIT] = "tx-tunnel-remcsum-segmentation",
|
||||
[NETIF_F_GSO_SCTP_BIT] = "tx-sctp-segmentation",
|
||||
[NETIF_F_GSO_ESP_BIT] = "tx-esp-segmentation",
|
||||
[NETIF_F_GSO_UDP_L4_BIT] = "tx-udp-segmentation",
|
||||
[NETIF_F_GSO_FRAGLIST_BIT] = "tx-gso-list",
|
||||
|
||||
[NETIF_F_FCOE_CRC_BIT] = "tx-checksum-fcoe-crc",
|
||||
[NETIF_F_SCTP_CRC_BIT] = "tx-checksum-sctp",
|
||||
|
@@ -2978,7 +2978,7 @@ ethtool_rx_flow_rule_create(const struct ethtool_rx_flow_spec_input *input)
|
||||
sizeof(match->mask.ipv6.dst));
|
||||
}
|
||||
if (memcmp(v6_m_spec->ip6src, &zero_addr, sizeof(zero_addr)) ||
|
||||
memcmp(v6_m_spec->ip6src, &zero_addr, sizeof(zero_addr))) {
|
||||
memcmp(v6_m_spec->ip6dst, &zero_addr, sizeof(zero_addr))) {
|
||||
match->dissector.used_keys |=
|
||||
BIT(FLOW_DISSECTOR_KEY_IPV6_ADDRS);
|
||||
match->dissector.offset[FLOW_DISSECTOR_KEY_IPV6_ADDRS] =
|
||||
|
@@ -78,19 +78,18 @@ static int linkstate_prepare_data(const struct ethnl_req_info *req_base,
|
||||
|
||||
ret = linkstate_get_sqi(dev);
|
||||
if (ret < 0 && ret != -EOPNOTSUPP)
|
||||
return ret;
|
||||
|
||||
goto out;
|
||||
data->sqi = ret;
|
||||
|
||||
ret = linkstate_get_sqi_max(dev);
|
||||
if (ret < 0 && ret != -EOPNOTSUPP)
|
||||
return ret;
|
||||
|
||||
goto out;
|
||||
data->sqi_max = ret;
|
||||
|
||||
ret = 0;
|
||||
out:
|
||||
ethnl_ops_complete(dev);
|
||||
|
||||
return 0;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int linkstate_reply_size(const struct ethnl_req_info *req_base,
|
||||
|
Reference in New Issue
Block a user