Skip to contentSkip to conversation

backports: rework igb patches

PATCH In review Stefan Assmann 2 participants 15 messages May 16, 2014 – Jun 1, 2014

lore
Share & tools
lore
#0 lore raw

cover backports: rework igb patches

Reworking the igb patches so that each atomic patch requirement is addressed individually, including documentation of the original patch which introduced the change.

Stefan Assmann (13):
backports: remove old igb patches
backports: handle new sriov_configure pointer in struct pci_driver
backports: handle changes to vlan_rx_add/kill pointers in struct
net_device_ops
backports: handle new ndo_set_vf_spoofchk pointer in struct
net_device_ops
backports: handle no_fcs change in struct sk_buff
backports: handle new get_eee and set_eee pointers in struct
ethtool_ops
backports: handle new get_ts_info pointer in struct ethtool_ops
backports: handle new get_module_info and get_module_eeprom pointers
in struct ethtool_ops
backports: handle new rxfh_ndir pointers in struct ethtool_ops
backports: handle argument type change of get_rxnfc in struct
ethtool_ops
backports: handle struct ethtool_cmd MDI changes
backports: handle hwmon_device_register_with_groups API calls
backports: handle pci_error_handlers change to const

 .../network/0017-get_ts_info/igb_get_ts_info.patch | 30 +++++++++
 .../network/0032-sriov_configure/INFO              | 13 ++++
 .../0032-sriov_configure/igb_sriov_configure.patch | 56 ++++++++++++++++
 .../network/0033-ndo_vlan_rx_vid/INFO              | 23 +++++++
 .../0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch | 78 ++++++++++++++++++++++
 .../network/0034-ndo_set_vf_spoofchk/INFO          | 12 ++++
 .../igb_ndo_set_vf_spoofchk.patch                  | 51 ++++++++++++++
 .../network/0035-skb_no_fcs/INFO                   | 12 ++++
 .../network/0035-skb_no_fcs/igb_skb_no_fcs.patch   | 16 +++++
 .../network/0036-ethtool_eee/INFO                  | 12 ++++
 .../network/0036-ethtool_eee/igb_ethtool_eee.patch | 31 +++++++++
 .../network/0037-ethtool_get_module/INFO           | 14 ++++
 .../0037-ethtool_get_module/igb_get_module.patch   | 31 +++++++++
 .../network/0038-ethtool_rxfh_indir/INFO           | 13 ++++
 .../0038-ethtool_rxfh_indir/igb_rxfh_indir.patch   | 48 +++++++++++++
 .../network/0039-ethtool_rxnfc/INFO                | 14 ++++
 .../network/0039-ethtool_rxnfc/igb_rxnfc.patch     | 18 +++++
 .../network/0040-ethtool_cmd_mdix/INFO             | 13 ++++
 .../igb_ethtool_cmd_mdix.patch                     | 49 ++++++++++++++
 .../INFO                                           | 13 ++++
 ...gb-devm_hwmon_device_register_with_groups.patch | 30 +++++++++
 .../network/0042-pci_error_handlers/INFO           | 12 ++++
 .../igb_pci_error_handlers.patch                   | 16 +++++
 .../0001-igb_net_device_ops.patch                  | 54 ---------------
 .../0002-igb_pci_sriov_configure.patch             | 57 ----------------
 .../0001-ethernet-igb/0004-igb_err_handler.patch   | 16 -----
 .../0001-ethernet-igb/0005-igb_mdi.patch           | 49 --------------
 .../0001-ethernet-igb/0006-igb_eee.patch           | 31 ---------
 .../0001-ethernet-igb/0007-igb_ethtool_ops.patch   | 56 ----------------
 .../0001-ethernet-igb/0008-igb_no_fcs.patch        | 16 -----
 .../0001-ethernet-igb/0009-igb_vlan_rx_vid.patch   | 64 ------------------
 .../0001-ethernet-igb/0010-igb_ethtool_ops.patch   | 48 -------------
 .../0001-ethernet-igb/0011-igb_ethtool_ops.patch   | 31 ---------
 .../0012-igb_ndo_set_vf_spoofchk.patch             | 51 --------------
 .../0001-ethernet-igb/0013-igb_hwmon.patch         | 30 ---------
 .../0001-ethernet-igb/INFO                         | 10 ---
 36 files changed, 605 insertions(+), 513 deletions(-)
 create mode 100644 patches/collateral-evolutions/network/0017-get_ts_info/igb_get_ts_info.patch
 create mode 100644 patches/collateral-evolutions/network/0032-sriov_configure/INFO
 create mode 100644 patches/collateral-evolutions/network/0032-sriov_configure/igb_sriov_configure.patch
 create mode 100644 patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/INFO
 create mode 100644 patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch
 create mode 100644 patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/INFO
 create mode 100644 patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/igb_ndo_set_vf_spoofchk.patch
 create mode 100644 patches/collateral-evolutions/network/0035-skb_no_fcs/INFO
 create mode 100644 patches/collateral-evolutions/network/0035-skb_no_fcs/igb_skb_no_fcs.patch
 create mode 100644 patches/collateral-evolutions/network/0036-ethtool_eee/INFO
 create mode 100644 patches/collateral-evolutions/network/0036-ethtool_eee/igb_ethtool_eee.patch
 create mode 100644 patches/collateral-evolutions/network/0037-ethtool_get_module/INFO
 create mode 100644 patches/collateral-evolutions/network/0037-ethtool_get_module/igb_get_module.patch
 create mode 100644 patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/INFO
 create mode 100644 patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/igb_rxfh_indir.patch
 create mode 100644 patches/collateral-evolutions/network/0039-ethtool_rxnfc/INFO
 create mode 100644 patches/collateral-evolutions/network/0039-ethtool_rxnfc/igb_rxnfc.patch
 create mode 100644 patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/INFO
 create mode 100644 patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/igb_ethtool_cmd_mdix.patch
 create mode 100644 patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/INFO
 create mode 100644 patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/igb-devm_hwmon_device_register_with_groups.patch
 create mode 100644 patches/collateral-evolutions/network/0042-pci_error_handlers/INFO
 create mode 100644 patches/collateral-evolutions/network/0042-pci_error_handlers/igb_pci_error_handlers.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0001-igb_net_device_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0002-igb_pci_sriov_configure.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0004-igb_err_handler.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0005-igb_mdi.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0006-igb_eee.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0007-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0008-igb_no_fcs.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0009-igb_vlan_rx_vid.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0010-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0011-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0012-igb_ndo_set_vf_spoofchk.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0013-igb_hwmon.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/INFO
Signature · 1 line
1.9.0
#1 lore raw

PATCH 1/13 backports: remove old igb patches

Reworking the igb patches and thus removing the old ones.

---
 .../0001-igb_net_device_ops.patch                  | 54 ------------------
 .../0002-igb_pci_sriov_configure.patch             | 57 -------------------
 .../0001-ethernet-igb/0004-igb_err_handler.patch   | 16 ------
 .../0001-ethernet-igb/0005-igb_mdi.patch           | 49 -----------------
 .../0001-ethernet-igb/0006-igb_eee.patch           | 31 -----------
 .../0001-ethernet-igb/0007-igb_ethtool_ops.patch   | 56 -------------------
 .../0001-ethernet-igb/0008-igb_no_fcs.patch        | 16 ------
 .../0001-ethernet-igb/0009-igb_vlan_rx_vid.patch   | 64 ----------------------
 .../0001-ethernet-igb/0010-igb_ethtool_ops.patch   | 48 ----------------
 .../0001-ethernet-igb/0011-igb_ethtool_ops.patch   | 31 -----------
 .../0012-igb_ndo_set_vf_spoofchk.patch             | 51 -----------------
 .../0001-ethernet-igb/0013-igb_hwmon.patch         | 30 ----------
 .../0001-ethernet-igb/INFO                         | 10 ----
 13 files changed, 513 deletions(-)
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0001-igb_net_device_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0002-igb_pci_sriov_configure.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0004-igb_err_handler.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0005-igb_mdi.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0006-igb_eee.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0007-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0008-igb_no_fcs.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0009-igb_vlan_rx_vid.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0010-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0011-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0012-igb_ndo_set_vf_spoofchk.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0013-igb_hwmon.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/INFO
patches/the-way-not-to-do-backports/0001-ethernet-igb/0001-igb_net_device_ops.patch deleted +0 -54
deleted file mode 100644
index e464283..0000000
@@ -1,54 +0,0 @@
---- a/drivers/net/ethernet/intel/igb/igb_main.c
-+++ b/drivers/net/ethernet/intel/igb/igb_main.c
-@@ -157,8 +157,13 @@ static void igb_tx_timeout(struct net_de
- static void igb_reset_task(struct work_struct *);
- static void igb_vlan_mode(struct net_device *netdev,
- 			  netdev_features_t features);
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
- static int igb_vlan_rx_add_vid(struct net_device *, __be16, u16);
- static int igb_vlan_rx_kill_vid(struct net_device *, __be16, u16);
-+#else
-+static int igb_vlan_rx_add_vid(struct net_device *, u16);
-+static int igb_vlan_rx_kill_vid(struct net_device *, u16);
-+#endif
- static void igb_restore_vlan(struct igb_adapter *);
- static void igb_rar_set_qsel(struct igb_adapter *, u8 *, u32 , u8);
- static void igb_ping_all_vfs(struct igb_adapter *);
-@@ -7257,8 +7262,12 @@ static void igb_vlan_mode(struct net_dev
- 	igb_rlpml_set(adapter);
- }
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
- static int igb_vlan_rx_add_vid(struct net_device *netdev,
- 			       __be16 proto, u16 vid)
-+#else
-+static int igb_vlan_rx_add_vid(struct net_device *netdev, u16 vid)
-+#endif
- {
- 	struct igb_adapter *adapter = netdev_priv(netdev);
- 	struct e1000_hw *hw = &adapter->hw;
-@@ -7275,8 +7284,12 @@ static int igb_vlan_rx_add_vid(struct ne
- 	return 0;
- }
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
- static int igb_vlan_rx_kill_vid(struct net_device *netdev,
- 				__be16 proto, u16 vid)
-+#else
-+static int igb_vlan_rx_kill_vid(struct net_device *netdev, u16 vid)
-+#endif
- {
- 	struct igb_adapter *adapter = netdev_priv(netdev);
- 	struct e1000_hw *hw = &adapter->hw;
-@@ -7302,7 +7315,11 @@ static void igb_restore_vlan(struct igb_
- 	igb_vlan_mode(adapter->netdev, adapter->netdev->features);
- 
- 	for_each_set_bit(vid, adapter->active_vlans, VLAN_N_VID)
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
- 		igb_vlan_rx_add_vid(adapter->netdev, htons(ETH_P_8021Q), vid);
-+#else
-+		igb_vlan_rx_add_vid(adapter->netdev, vid);
-+#endif
- }
- 
- int igb_set_spd_dplx(struct igb_adapter *adapter, u32 spd, u8 dplx)
patches/the-way-not-to-do-backports/0001-ethernet-igb/0002-igb_pci_sriov_configure.patch deleted +0 -57

57 lines not on this page · raw message

patches/the-way-not-to-do-backports/0001-ethernet-igb/0004-igb_err_handler.patch deleted +0 -16
deleted file mode 100644
index db096f8..0000000
@@ -1,16 +0,0 @@
-diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
-index 67441f2..4df7bce 100644
---- a/drivers/net/ethernet/intel/igb/igb_main.c
-+++ b/drivers/net/ethernet/intel/igb/igb_main.c
-@@ -233,7 +233,11 @@ static pci_ers_result_t igb_io_error_det
- static pci_ers_result_t igb_io_slot_reset(struct pci_dev *);
- static void igb_io_resume(struct pci_dev *);
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0)
- static const struct pci_error_handlers igb_err_handler = {
-+#else
-+static struct pci_error_handlers igb_err_handler = {
-+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0) */
- 	.error_detected = igb_io_error_detected,
- 	.slot_reset = igb_io_slot_reset,
- 	.resume = igb_io_resume,
patches/the-way-not-to-do-backports/0001-ethernet-igb/0005-igb_mdi.patch deleted +0 -49

49 lines not on this page · raw message

patches/the-way-not-to-do-backports/0001-ethernet-igb/0006-igb_eee.patch deleted +0 -31
deleted file mode 100644
index 04e1503..0000000
@@ -1,31 +0,0 @@
-diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
-index 9b15820..9767f11 100644
---- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
-+++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
-@@ -2589,6 +2589,7 @@ static int igb_set_rxnfc(struct net_devi
- 	return ret;
- }
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
- static int igb_get_eee(struct net_device *netdev, struct ethtool_eee *edata)
- {
- 	struct igb_adapter *adapter = netdev_priv(netdev);
-@@ -2730,6 +2731,7 @@ static int igb_set_eee(struct net_device
- 
- 	return 0;
- }
-+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0) */
- 
- static int igb_get_module_info(struct net_device *netdev,
- 			       struct ethtool_modinfo *modinfo)
-@@ -3020,8 +3022,10 @@ static const struct ethtool_ops igb_etht
- 	.get_ts_info		= igb_get_ts_info,
- 	.get_rxnfc		= igb_get_rxnfc,
- 	.set_rxnfc		= igb_set_rxnfc,
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
- 	.get_eee		= igb_get_eee,
- 	.set_eee		= igb_set_eee,
-+#endif
- 	.get_module_info	= igb_get_module_info,
- 	.get_module_eeprom	= igb_get_module_eeprom,
- 	.get_rxfh_indir_size	= igb_get_rxfh_indir_size,
patches/the-way-not-to-do-backports/0001-ethernet-igb/0007-igb_ethtool_ops.patch deleted +0 -56

56 lines not on this page · raw message

patches/the-way-not-to-do-backports/0001-ethernet-igb/0008-igb_no_fcs.patch deleted +0 -16
deleted file mode 100644
index 8b5bb4a..0000000
@@ -1,16 +0,0 @@
-diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
-index fd6a103..a919cfa 100644
---- a/drivers/net/ethernet/intel/igb/igb_main.c
-+++ b/drivers/net/ethernet/intel/igb/igb_main.c
-@@ -4765,9 +4765,10 @@ static u32 igb_tx_cmd_type(struct sk_buf
- 	cmd_type |= IGB_SET_FLAG(tx_flags, IGB_TX_FLAGS_TSTAMP,
- 				 (E1000_ADVTXD_MAC_TSTAMP));
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)
- 	/* insert frame checksum */
- 	cmd_type ^= IGB_SET_FLAG(skb->no_fcs, 1, E1000_ADVTXD_DCMD_IFCS);
--
-+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0) */
- 	return cmd_type;
- }
- 
patches/the-way-not-to-do-backports/0001-ethernet-igb/0009-igb_vlan_rx_vid.patch deleted +0 -64

64 lines not on this page · raw message

patches/the-way-not-to-do-backports/0001-ethernet-igb/0010-igb_ethtool_ops.patch deleted +0 -48

48 lines not on this page · raw message

patches/the-way-not-to-do-backports/0001-ethernet-igb/0011-igb_ethtool_ops.patch deleted +0 -31
deleted file mode 100644
index 9b64c21..0000000
@@ -1,31 +0,0 @@
-diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
-index 5e519ce..9f61f1d 100644
---- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
-+++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
-@@ -2412,6 +2412,7 @@ static int igb_get_ts_info(struct net_de
- }
- #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) */
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)
- static int igb_get_rss_hash_opts(struct igb_adapter *adapter,
- 				 struct ethtool_rxnfc *cmd)
- {
-@@ -2590,6 +2591,7 @@ static int igb_set_rxnfc(struct net_devi
- 
- 	return ret;
- }
-+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) */
- 
- #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
- static int igb_get_eee(struct net_device *netdev, struct ethtool_eee *edata)
-@@ -3030,8 +3032,10 @@ static const struct ethtool_ops igb_etht
- #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)
- 	.get_ts_info		= igb_get_ts_info,
- #endif
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)
- 	.get_rxnfc		= igb_get_rxnfc,
- 	.set_rxnfc		= igb_set_rxnfc,
-+#endif
- #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
- 	.get_eee		= igb_get_eee,
- 	.set_eee		= igb_set_eee,
patches/the-way-not-to-do-backports/0001-ethernet-igb/0012-igb_ndo_set_vf_spoofchk.patch deleted +0 -51

51 lines not on this page · raw message

patches/the-way-not-to-do-backports/0001-ethernet-igb/0013-igb_hwmon.patch deleted +0 -30
deleted file mode 100644
index f164ab8..0000000
@@ -1,30 +0,0 @@
-diff --git a/drivers/net/ethernet/intel/igb/igb_hwmon.c b/drivers/net/ethernet/intel/igb/igb_hwmon.c
-index fdf2b82..99507de 100644
---- a/drivers/net/ethernet/intel/igb/igb_hwmon.c
-+++ b/drivers/net/ethernet/intel/igb/igb_hwmon.c
-@@ -176,7 +176,9 @@ int igb_sysfs_init(struct igb_adapter *a
- {
- 	struct hwmon_buff *igb_hwmon;
- 	struct i2c_client *client;
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)
- 	struct device *hwmon_dev;
-+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0) */
- 	unsigned int i;
- 	int rc = 0;
- 
-@@ -233,6 +235,7 @@ int igb_sysfs_init(struct igb_adapter *a
- 	igb_hwmon->groups[0] = &igb_hwmon->group;
- 	igb_hwmon->group.attrs = igb_hwmon->attrs;
- 
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)
- 	hwmon_dev = devm_hwmon_device_register_with_groups(&adapter->pdev->dev,
- 							   client->name,
- 							   igb_hwmon,
-@@ -245,6 +248,7 @@ int igb_sysfs_init(struct igb_adapter *a
- 	goto exit;
- 
- err:
-+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0) */
- 	igb_sysfs_del_adapter(adapter);
- exit:
- 	return rc;
patches/the-way-not-to-do-backports/0001-ethernet-igb/INFO deleted +0 -10
deleted file mode 100644
index 0b91989..0000000
@@ -1,10 +0,0 @@
-This series needs work, each atomic patch backport requirements needs to be
-split out atomically into either an existing matching series under
-
-patches/collateral-evolutions/network/
-patches/collateral-evolutions/generic/
-
-Or a new series for either of them needs to be created, each change must
-document the original patch that introduced the change that incurred the
-backport being peformed, and the respective kernel in which it was introduced
-which can be obtained by 'git describe --contains sha1sum'.
Signature · 1 line
1.9.0
#2 lore raw

PATCH 2/13 backports: handle new sriov_configure pointer in struct pci_driver

In reply to Stefan Assmann

In kernel 3.8 struct pci_driver got a new function pointer sriov_configure. Address this by putting ifdef around the code.

commit 1789382a72a537447d65ea4131d8bcc1ad85ce7b

Author: Donald Dutile <[email protected]>
Date:   Mon Nov 5 15:20:36 2012 -0500

PCI: SRIOV control and status via sysfs

git describe --contains 1789382a72a537447d65ea4131d8bcc1ad85ce7b v3.8-rc1~128^2~6^2~4

---
 .../network/0032-sriov_configure/INFO              | 13 +++++
 .../0032-sriov_configure/igb_sriov_configure.patch | 56 ++++++++++++++++++++++
 2 files changed, 69 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0032-sriov_configure/INFO
 create mode 100644 patches/collateral-evolutions/network/0032-sriov_configure/igb_sriov_configure.patch
patches/collateral-evolutions/network/0032-sriov_configure/INFO new file +13 -0
new file mode 100644
index 0000000..813d352
@@ -0,0 +1,13 @@
+In kernel 3.8 struct pci_driver got a new function pointer sriov_configure.
+Address this by putting ifdef around the code.
+
+
+commit 1789382a72a537447d65ea4131d8bcc1ad85ce7b
+Author: Donald Dutile <[email protected]>
+Date:   Mon Nov 5 15:20:36 2012 -0500
+
+    PCI: SRIOV control and status via sysfs
+
+git describe --contains 1789382a72a537447d65ea4131d8bcc1ad85ce7b
+v3.8-rc1~128^2~6^2~4
+
patches/collateral-evolutions/network/0032-sriov_configure/igb_sriov_configure.patch new file +56 -0

56 lines not on this page · raw message

Signature · 1 line
1.9.0
#3 lore raw

PATCH 3/13 backports: handle changes to vlan_rx_add/kill pointers in struct net_device_ops

In reply to Stefan Assmann

In kernel 3.3 and 3.10 struct net_device_ops function pointers ndo_vlan_rx_add_vid and ndo_vlan_rx_kill_vid changed. Address this by putting ifdef around the code.

commit 8e586137e6b63af1e881b328466ab5ffbe562510

Author: Jiri Pirko <[email protected]>
Date:   Thu Dec 8 19:52:37 2011 -0500

net: make vlan ndo_vlan_rx_[add/kill]_vid return error value

git describe --contains 8e586137e6b63af1e881b328466ab5ffbe562510 v3.3-rc1~182^2~291

commit 80d5c3689b886308247da295a228a54df49a44f6

Author: Patrick McHardy <[email protected]>
Date:   Fri Apr 19 02:04:28 2013 +0000

net: vlan: prepare for 802.1ad VLAN filtering offload

git describe --contains 80d5c3689b886308247da295a228a54df49a44f6 v3.10-rc1~66^2~97^2~4

---
 .../network/0033-ndo_vlan_rx_vid/INFO              | 23 +++++++
 .../0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch | 78 ++++++++++++++++++++++
 2 files changed, 101 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/INFO
 create mode 100644 patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch
patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/INFO new file +23 -0
new file mode 100644
index 0000000..9a61253
@@ -0,0 +1,23 @@
+In kernel 3.3 and 3.10 struct net_device_ops function pointers
+ndo_vlan_rx_add_vid and ndo_vlan_rx_kill_vid changed.
+Address this by putting ifdef around the code.
+
+
+commit 8e586137e6b63af1e881b328466ab5ffbe562510
+Author: Jiri Pirko <[email protected]>
+Date:   Thu Dec 8 19:52:37 2011 -0500
+
+    net: make vlan ndo_vlan_rx_[add/kill]_vid return error value
+
+git describe --contains 8e586137e6b63af1e881b328466ab5ffbe562510
+v3.3-rc1~182^2~291
+
+
+commit 80d5c3689b886308247da295a228a54df49a44f6
+Author: Patrick McHardy <[email protected]>
+Date:   Fri Apr 19 02:04:28 2013 +0000
+
+    net: vlan: prepare for 802.1ad VLAN filtering offload
+
+git describe --contains 80d5c3689b886308247da295a228a54df49a44f6
+v3.10-rc1~66^2~97^2~4
patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch new file +78 -0

78 lines not on this page · raw message

Signature · 1 line
1.9.0
#4 lore raw

PATCH 4/13 backports: handle new ndo_set_vf_spoofchk pointer in struct net_device_ops

In reply to Stefan Assmann

In kernel 3.2 struct net_device_ops got a new function pointer ndo_set_vf_spoofchk. Address this by putting ifdef around the code.

commit 5f8444a3fa617076f8da51a3e8ecce01a5d7f738

Author: Greg Rose <[email protected]>
Date:   Sat Oct 8 03:05:24 2011 +0000

if_link: Add additional parameter to IFLA_VF_INFO for spoof checking

git describe --contains 5f8444a3fa617076f8da51a3e8ecce01a5d7f738 v3.2-rc1~129^2~87

---
 .../network/0034-ndo_set_vf_spoofchk/INFO          | 12 +++++
 .../igb_ndo_set_vf_spoofchk.patch                  | 51 ++++++++++++++++++++++
 2 files changed, 63 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/INFO
 create mode 100644 patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/igb_ndo_set_vf_spoofchk.patch
patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/INFO new file +12 -0
new file mode 100644
index 0000000..31c4a7e
@@ -0,0 +1,12 @@
+In kernel 3.2 struct net_device_ops got a new function pointer
+ndo_set_vf_spoofchk. Address this by putting ifdef around the code.
+
+
+commit 5f8444a3fa617076f8da51a3e8ecce01a5d7f738
+Author: Greg Rose <[email protected]>
+Date:   Sat Oct 8 03:05:24 2011 +0000
+
+    if_link: Add additional parameter to IFLA_VF_INFO for spoof checking
+
+git describe --contains 5f8444a3fa617076f8da51a3e8ecce01a5d7f738
+v3.2-rc1~129^2~87
patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/igb_ndo_set_vf_spoofchk.patch new file +51 -0

51 lines not on this page · raw message

Signature · 1 line
1.9.0
#5 lore raw

PATCH 5/13 backports: handle no_fcs change in struct sk_buff

In reply to Stefan Assmann

In kernel 3.4 a new field no_fcs was introduced to struct sk_buff. Address this by putting ifdef around the code.

commit 3bdc0eba0b8b47797f4a76e377dd8360f317450f

Author: Ben Greear <[email protected]>
Date:   Sat Feb 11 15:39:30 2012 +0000

net: Add framework to allow sending packets with customized CRC.

git describe --contains 3bdc0eba0b8b47797f4a76e377dd8360f317450f v3.4-rc1~177^2~207

---
 .../collateral-evolutions/network/0035-skb_no_fcs/INFO   | 12 ++++++++++++
 .../network/0035-skb_no_fcs/igb_skb_no_fcs.patch         | 16 ++++++++++++++++
 2 files changed, 28 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0035-skb_no_fcs/INFO
 create mode 100644 patches/collateral-evolutions/network/0035-skb_no_fcs/igb_skb_no_fcs.patch
patches/collateral-evolutions/network/0035-skb_no_fcs/INFO new file +12 -0
new file mode 100644
index 0000000..a242c97
@@ -0,0 +1,12 @@
+In kernel 3.4 a new field no_fcs was introduced to struct sk_buff.
+Address this by putting ifdef around the code.
+
+
+commit 3bdc0eba0b8b47797f4a76e377dd8360f317450f
+Author: Ben Greear <[email protected]>
+Date:   Sat Feb 11 15:39:30 2012 +0000
+
+    net: Add framework to allow sending packets with customized CRC.
+
+git describe --contains 3bdc0eba0b8b47797f4a76e377dd8360f317450f
+v3.4-rc1~177^2~207
patches/collateral-evolutions/network/0035-skb_no_fcs/igb_skb_no_fcs.patch new file +16 -0
new file mode 100644
index 0000000..d4aee27
@@ -0,0 +1,16 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
+index ccd8f36..132cef8 100644
+--- a/drivers/net/ethernet/intel/igb/igb_main.c
++++ b/drivers/net/ethernet/intel/igb/igb_main.c
+@@ -4768,9 +4768,10 @@ static u32 igb_tx_cmd_type(struct sk_buff *skb, u32 tx_flags)
+ 	cmd_type |= IGB_SET_FLAG(tx_flags, IGB_TX_FLAGS_TSTAMP,
+ 				 (E1000_ADVTXD_MAC_TSTAMP));
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)
+ 	/* insert frame checksum */
+ 	cmd_type ^= IGB_SET_FLAG(skb->no_fcs, 1, E1000_ADVTXD_DCMD_IFCS);
+-
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0) */
+ 	return cmd_type;
+ }
+ 
Signature · 1 line
1.9.0
#6 lore raw

PATCH 6/13 backports: handle new get_eee and set_eee pointers in struct ethtool_ops

In reply to Stefan Assmann

In kernel 3.6 struct ethtool_ops received 2 new function pointers get_eee and set_eee. Address this by putting ifdef around the code.

commit 80f12eccce775dc6bb93dba9b52529740f929237

Author: Yuval Mintz <[email protected]>
Date:   Wed Jun 6 17:13:06 2012 +0000

Added kernel support in EEE Ethtool commands

git describe --contains 80f12eccce775dc6bb93dba9b52529740f929237 v3.6-rc1~125^2~587

---
 .../network/0036-ethtool_eee/INFO                  | 12 +++++++++
 .../network/0036-ethtool_eee/igb_ethtool_eee.patch | 31 ++++++++++++++++++++++
 2 files changed, 43 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0036-ethtool_eee/INFO
 create mode 100644 patches/collateral-evolutions/network/0036-ethtool_eee/igb_ethtool_eee.patch
patches/collateral-evolutions/network/0036-ethtool_eee/INFO new file +12 -0
new file mode 100644
index 0000000..32650f7
@@ -0,0 +1,12 @@
+In kernel 3.6 struct ethtool_ops received 2 new function pointers get_eee
+and set_eee. Address this by putting ifdef around the code.
+
+
+commit 80f12eccce775dc6bb93dba9b52529740f929237
+Author: Yuval Mintz <[email protected]>
+Date:   Wed Jun 6 17:13:06 2012 +0000
+
+    Added kernel support in EEE Ethtool commands
+
+git describe --contains 80f12eccce775dc6bb93dba9b52529740f929237
+v3.6-rc1~125^2~587
patches/collateral-evolutions/network/0036-ethtool_eee/igb_ethtool_eee.patch new file +31 -0
new file mode 100644
index 0000000..dcc5b2b
@@ -0,0 +1,31 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+index 333a2b0..7c8b9bf 100644
+--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
++++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+@@ -2589,6 +2589,7 @@ static int igb_set_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd)
+ 	return ret;
+ }
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
+ static int igb_get_eee(struct net_device *netdev, struct ethtool_eee *edata)
+ {
+ 	struct igb_adapter *adapter = netdev_priv(netdev);
+@@ -2730,6 +2731,7 @@ static int igb_set_eee(struct net_device *netdev,
+ 
+ 	return 0;
+ }
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0) */
+ 
+ static int igb_get_module_info(struct net_device *netdev,
+ 			       struct ethtool_modinfo *modinfo)
+@@ -3020,8 +3022,10 @@ static const struct ethtool_ops igb_ethtool_ops = {
+ 	.get_ts_info		= igb_get_ts_info,
+ 	.get_rxnfc		= igb_get_rxnfc,
+ 	.set_rxnfc		= igb_set_rxnfc,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
+ 	.get_eee		= igb_get_eee,
+ 	.set_eee		= igb_set_eee,
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0) */
+ 	.get_module_info	= igb_get_module_info,
+ 	.get_module_eeprom	= igb_get_module_eeprom,
+ 	.get_rxfh_indir_size	= igb_get_rxfh_indir_size,
Signature · 1 line
1.9.0
#7 lore raw

PATCH 7/13 backports: handle new get_ts_info pointer in struct ethtool_ops

In reply to Stefan Assmann

In kernel 3.5 struct ethtool_ops received a new function pointer get_ts_info. Address this by putting ifdef around the code.

commit c8f3a8c31069137fe0100e6920558f1a7487ef3c

Author: Richard Cochran <[email protected]>
Date:   Tue Apr 3 22:59:17 2012 +0000

ethtool: Introduce a method for getting time stamping capabilities.

git describe --contains c8f3a8c31069137fe0100e6920558f1a7487ef3c v3.5-rc1~109^2~632

---
 .../network/0017-get_ts_info/igb_get_ts_info.patch | 30 ++++++++++++++++++++++
 1 file changed, 30 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0017-get_ts_info/igb_get_ts_info.patch
patches/collateral-evolutions/network/0017-get_ts_info/igb_get_ts_info.patch new file +30 -0
new file mode 100644
index 0000000..1409834
@@ -0,0 +1,30 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+index 7c8b9bf..75606be 100644
+--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
++++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+@@ -2350,6 +2350,7 @@ static void igb_get_strings(struct net_device *netdev, u32 stringset, u8 *data)
+ 	}
+ }
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)
+ static int igb_get_ts_info(struct net_device *dev,
+ 			   struct ethtool_ts_info *info)
+ {
+@@ -2405,6 +2406,7 @@ static int igb_get_ts_info(struct net_device *dev,
+ 		return -EOPNOTSUPP;
+ 	}
+ }
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) */
+ 
+ static int igb_get_rss_hash_opts(struct igb_adapter *adapter,
+ 				 struct ethtool_rxnfc *cmd)
+@@ -3019,7 +3021,9 @@ static const struct ethtool_ops igb_ethtool_ops = {
+ 	.get_ethtool_stats	= igb_get_ethtool_stats,
+ 	.get_coalesce		= igb_get_coalesce,
+ 	.set_coalesce		= igb_set_coalesce,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)
+ 	.get_ts_info		= igb_get_ts_info,
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) */
+ 	.get_rxnfc		= igb_get_rxnfc,
+ 	.set_rxnfc		= igb_set_rxnfc,
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0)
Signature · 1 line
1.9.0
#8 lore raw

PATCH 8/13 backports: handle new get_module_info and get_module_eeprom pointers in struct ethtool_ops

In reply to Stefan Assmann

In kernel 3.5 struct ethtool_ops received 2 new function pointers get_module_info and get_module_eeprom. Address this by putting ifdef around the code.

commit 41c3cb6d20f0252308e9796fa4f3dacb4960de91

Author: Stuart Hodgson <[email protected]>
Date:   Thu Apr 19 09:44:42 2012 +0100

ethtool: Extend the ethtool API to obtain plugin module eeprom data

git describe --contains 41c3cb6d20f0252308e9796fa4f3dacb4960de91 v3.5-rc1~109^2~124^2~2

---
 .../network/0037-ethtool_get_module/INFO           | 14 ++++++++++
 .../0037-ethtool_get_module/igb_get_module.patch   | 31 ++++++++++++++++++++++
 2 files changed, 45 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0037-ethtool_get_module/INFO
 create mode 100644 patches/collateral-evolutions/network/0037-ethtool_get_module/igb_get_module.patch
patches/collateral-evolutions/network/0037-ethtool_get_module/INFO new file +14 -0
new file mode 100644
index 0000000..d2cc4fe
@@ -0,0 +1,14 @@
+In kernel 3.5 struct ethtool_ops received 2 new function pointers
+get_module_info and get_module_eeprom. Address this by putting ifdef around
+the code.
+
+
+commit 41c3cb6d20f0252308e9796fa4f3dacb4960de91
+Author: Stuart Hodgson <[email protected]>
+Date:   Thu Apr 19 09:44:42 2012 +0100
+
+    ethtool: Extend the ethtool API to obtain plugin module eeprom data
+
+git describe --contains 41c3cb6d20f0252308e9796fa4f3dacb4960de91
+v3.5-rc1~109^2~124^2~2
+
patches/collateral-evolutions/network/0037-ethtool_get_module/igb_get_module.patch new file +31 -0
new file mode 100644
index 0000000..851fdc8
@@ -0,0 +1,31 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+index 75606be..6662b3b 100644
+--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
++++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+@@ -2735,6 +2735,7 @@ static int igb_set_eee(struct net_device *netdev,
+ }
+ #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0) */
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)
+ static int igb_get_module_info(struct net_device *netdev,
+ 			       struct ethtool_modinfo *modinfo)
+ {
+@@ -2815,6 +2816,7 @@ static int igb_get_module_eeprom(struct net_device *netdev,
+ 
+ 	return 0;
+ }
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) */
+ 
+ static int igb_ethtool_begin(struct net_device *netdev)
+ {
+@@ -3030,8 +3032,10 @@ static const struct ethtool_ops igb_ethtool_ops = {
+ 	.get_eee		= igb_get_eee,
+ 	.set_eee		= igb_set_eee,
+ #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0) */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0)
+ 	.get_module_info	= igb_get_module_info,
+ 	.get_module_eeprom	= igb_get_module_eeprom,
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0) */
+ 	.get_rxfh_indir_size	= igb_get_rxfh_indir_size,
+ 	.get_rxfh_indir		= igb_get_rxfh_indir,
+ 	.set_rxfh_indir		= igb_set_rxfh_indir,
Signature · 1 line
1.9.0
#9 lore raw

PATCH 9/13 backports: handle new rxfh_ndir pointers in struct ethtool_ops

In reply to Stefan Assmann

In kernel 3.3 struct ethtool_ops received 3 new function pointers get_rxfh_indir_size, get_rxfh_indir, set_rxfh_indir. Address this by putting ifdef around the code.

commit 7850f63f1620512631445b901ae11cd149e7375c

Author: Ben Hutchings <[email protected]>
Date:   Thu Dec 15 13:55:01 2011 +0000

ethtool: Centralise validation of ETHTOOL_{G, S}RXFHINDIR parameters

git describe --contains 7850f63f1620512631445b901ae11cd149e7375c v3.3-rc1~182^2~192

---
 .../network/0038-ethtool_rxfh_indir/INFO           | 13 ++++++
 .../0038-ethtool_rxfh_indir/igb_rxfh_indir.patch   | 48 ++++++++++++++++++++++
 2 files changed, 61 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/INFO
 create mode 100644 patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/igb_rxfh_indir.patch
patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/INFO new file +13 -0
new file mode 100644
index 0000000..0e050aa
@@ -0,0 +1,13 @@
+In kernel 3.3 struct ethtool_ops received 3 new function pointers
+get_rxfh_indir_size, get_rxfh_indir, set_rxfh_indir.
+Address this by putting ifdef around the code.
+
+
+commit 7850f63f1620512631445b901ae11cd149e7375c
+Author: Ben Hutchings <[email protected]>
+Date:   Thu Dec 15 13:55:01 2011 +0000
+
+    ethtool: Centralise validation of ETHTOOL_{G, S}RXFHINDIR parameters
+
+git describe --contains 7850f63f1620512631445b901ae11cd149e7375c
+v3.3-rc1~182^2~192
patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/igb_rxfh_indir.patch new file +48 -0

48 lines not on this page · raw message

Signature · 1 line
1.9.0
#10 lore raw

PATCH 10/13 backports: handle argument type change of get_rxnfc in struct ethtool_ops

In reply to Stefan Assmann

In kernel 3.2 an argument type of function pointer get_rxnfc in struct ethtool_ops changed from void to u32.
Address this by putting ifdef around the code.

commit 815c7db5c809ea3d5735de3131ecdf758b0e14ff

Author: Ben Hutchings <[email protected]>
Date:   Tue Sep 6 13:49:12 2011 +0000

ethtool: Clean up definitions of rule location arrays in RX NFC

git describe --contains 815c7db5c809ea3d5735de3131ecdf758b0e14ff v3.2-rc1~129^2~272

---
 .../network/0039-ethtool_rxnfc/INFO                    | 14 ++++++++++++++
 .../network/0039-ethtool_rxnfc/igb_rxnfc.patch         | 18 ++++++++++++++++++
 2 files changed, 32 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0039-ethtool_rxnfc/INFO
 create mode 100644 patches/collateral-evolutions/network/0039-ethtool_rxnfc/igb_rxnfc.patch
patches/collateral-evolutions/network/0039-ethtool_rxnfc/INFO new file +14 -0
new file mode 100644
index 0000000..55ad380
@@ -0,0 +1,14 @@
+In kernel 3.2 an argument type of function pointer get_rxnfc in
+struct ethtool_ops changed from void to u32.
+Address this by putting ifdef around the code.
+
+
+commit 815c7db5c809ea3d5735de3131ecdf758b0e14ff
+Author: Ben Hutchings <[email protected]>
+Date:   Tue Sep 6 13:49:12 2011 +0000
+
+    ethtool: Clean up definitions of rule location arrays in RX NFC
+
+git describe --contains 815c7db5c809ea3d5735de3131ecdf758b0e14ff
+v3.2-rc1~129^2~272
+
patches/collateral-evolutions/network/0039-ethtool_rxnfc/igb_rxnfc.patch new file +18 -0
new file mode 100644
index 0000000..875b97a
@@ -0,0 +1,18 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_ethtool.c b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+index 03fe81a..f561b7b 100644
+--- a/drivers/net/ethernet/intel/igb/igb_ethtool.c
++++ b/drivers/net/ethernet/intel/igb/igb_ethtool.c
+@@ -2450,8 +2450,13 @@ static int igb_get_rss_hash_opts(struct igb_adapter *adapter,
+ 	return 0;
+ }
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)
+ static int igb_get_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
+ 			 u32 *rule_locs)
++#else
++static int igb_get_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
++			 void *rule_locs)
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) */
+ {
+ 	struct igb_adapter *adapter = netdev_priv(dev);
+ 	int ret = -EOPNOTSUPP;
Signature · 1 line
1.9.0
#11 lore raw

PATCH 11/13 backports: handle struct ethtool_cmd MDI changes

In reply to Stefan Assmann

In kernel 3.7 struct ethtool_cmd received eth_tp_mdix and eth_tp_mdix_ctrl. Address this by putting ifdef around the code using these struct components.

commit 6f6bbc186dc8e4e0c628db7decbd1a5e02cb5fd8

Author: Jesse Brandeburg <[email protected]>
Date:   Thu Jul 26 02:30:53 2012 +0000

ethtool.h: MDI setting support

git describe --contains 6f6bbc186dc8e4e0c628db7decbd1a5e02cb5fd8 v3.7-rc1~145^2~300^2~5

---
 .../network/0040-ethtool_cmd_mdix/INFO             | 13 ++++++
 .../igb_ethtool_cmd_mdix.patch                     | 49 ++++++++++++++++++++++
 2 files changed, 62 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/INFO
 create mode 100644 patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/igb_ethtool_cmd_mdix.patch
patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/INFO new file +13 -0
new file mode 100644
index 0000000..21e4add
@@ -0,0 +1,13 @@
+In kernel 3.7 struct ethtool_cmd received eth_tp_mdix and eth_tp_mdix_ctrl.
+Address this by putting ifdef around the code using these struct components.
+
+
+commit 6f6bbc186dc8e4e0c628db7decbd1a5e02cb5fd8
+Author: Jesse Brandeburg <[email protected]>
+Date:   Thu Jul 26 02:30:53 2012 +0000
+
+    ethtool.h: MDI setting support
+
+git describe --contains 6f6bbc186dc8e4e0c628db7decbd1a5e02cb5fd8
+v3.7-rc1~145^2~300^2~5
+
patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/igb_ethtool_cmd_mdix.patch new file +49 -0

49 lines not on this page · raw message

Signature · 1 line
1.9.0
#12 lore raw

PATCH 12/13 backports: handle hwmon_device_register_with_groups API calls

In reply to Stefan Assmann

The new hwmon_device_register_with_groups API has not been backported yet. Address this by putting ifdef around the code using the API.

commit 74188cba088192e14cd7fd5433876e8c947bcdd8

Author: Guenter Roeck <[email protected]>
Date:   Thu Jul 11 20:00:12 2013 -0700

hwmon: Provide managed hwmon registration

git describe --contains 74188cba088192e14cd7fd5433876e8c947bcdd8 v3.13-rc1~126^2~30

---
 .../INFO                                           | 13 ++++++++++
 ...gb-devm_hwmon_device_register_with_groups.patch | 30 ++++++++++++++++++++++
 2 files changed, 43 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/INFO
 create mode 100644 patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/igb-devm_hwmon_device_register_with_groups.patch
patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/INFO new file +13 -0
new file mode 100644
index 0000000..9169f68
@@ -0,0 +1,13 @@
+The new hwmon_device_register_with_groups API has not been backported yet.
+Address this by putting ifdef around the code using the API.
+
+
+commit 74188cba088192e14cd7fd5433876e8c947bcdd8
+Author: Guenter Roeck <[email protected]>
+Date:   Thu Jul 11 20:00:12 2013 -0700
+
+    hwmon: Provide managed hwmon registration
+
+git describe --contains 74188cba088192e14cd7fd5433876e8c947bcdd8
+v3.13-rc1~126^2~30
+
patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/igb-devm_hwmon_device_register_with_groups.patch new file +30 -0
new file mode 100644
index 0000000..9f4f40e
@@ -0,0 +1,30 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_hwmon.c b/drivers/net/ethernet/intel/igb/igb_hwmon.c
+index 2eee9bb..ad08b1f 100644
+--- a/drivers/net/ethernet/intel/igb/igb_hwmon.c
++++ b/drivers/net/ethernet/intel/igb/igb_hwmon.c
+@@ -173,7 +173,9 @@ int igb_sysfs_init(struct igb_adapter *adapter)
+ {
+ 	struct hwmon_buff *igb_hwmon;
+ 	struct i2c_client *client;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)
+ 	struct device *hwmon_dev;
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0) */
+ 	unsigned int i;
+ 	int rc = 0;
+ 
+@@ -230,6 +232,7 @@ int igb_sysfs_init(struct igb_adapter *adapter)
+ 	igb_hwmon->groups[0] = &igb_hwmon->group;
+ 	igb_hwmon->group.attrs = igb_hwmon->attrs;
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)
+ 	hwmon_dev = devm_hwmon_device_register_with_groups(&adapter->pdev->dev,
+ 							   client->name,
+ 							   igb_hwmon,
+@@ -242,6 +245,7 @@ int igb_sysfs_init(struct igb_adapter *adapter)
+ 	goto exit;
+ 
+ err:
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0) */
+ 	igb_sysfs_del_adapter(adapter);
+ exit:
+ 	return rc;
Signature · 1 line
1.9.0
#13 lore raw

PATCH 13/13 backports: handle pci_error_handlers change to const

In reply to Stefan Assmann

In kernel 3.7 struct pci_driver changed pci_error_handlers to const. Address this by putting ifdef around the code.

commit 494530284f16298050ab99f54b7b12dd7d1418a1

Author: Stephen Hemminger <[email protected]>
Date:   Fri Sep 7 09:33:14 2012 -0700

PCI: Make pci_error_handlers const

git describe --contains 494530284f16298050ab99f54b7b12dd7d1418a1 v3.7-rc1~177^2~9^2~3

---
 .../network/0042-pci_error_handlers/INFO                 | 12 ++++++++++++
 .../0042-pci_error_handlers/igb_pci_error_handlers.patch | 16 ++++++++++++++++
 2 files changed, 28 insertions(+)
 create mode 100644 patches/collateral-evolutions/network/0042-pci_error_handlers/INFO
 create mode 100644 patches/collateral-evolutions/network/0042-pci_error_handlers/igb_pci_error_handlers.patch
patches/collateral-evolutions/network/0042-pci_error_handlers/INFO new file +12 -0
new file mode 100644
index 0000000..ffb183c
@@ -0,0 +1,12 @@
+In kernel 3.7 struct pci_driver changed pci_error_handlers to const.
+Address this by putting ifdef around the code.
+
+
+commit 494530284f16298050ab99f54b7b12dd7d1418a1
+Author: Stephen Hemminger <[email protected]>
+Date:   Fri Sep 7 09:33:14 2012 -0700
+
+    PCI: Make pci_error_handlers const
+
+git describe --contains 494530284f16298050ab99f54b7b12dd7d1418a1
+v3.7-rc1~177^2~9^2~3
patches/collateral-evolutions/network/0042-pci_error_handlers/igb_pci_error_handlers.patch new file +16 -0
new file mode 100644
index 0000000..cedff12
@@ -0,0 +1,16 @@
+diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
+index 132cef8..0e616a7 100644
+--- a/drivers/net/ethernet/intel/igb/igb_main.c
++++ b/drivers/net/ethernet/intel/igb/igb_main.c
+@@ -234,7 +234,11 @@ static pci_ers_result_t igb_io_error_detected(struct pci_dev *,
+ static pci_ers_result_t igb_io_slot_reset(struct pci_dev *);
+ static void igb_io_resume(struct pci_dev *);
+ 
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0)
+ static const struct pci_error_handlers igb_err_handler = {
++#else
++static struct pci_error_handlers igb_err_handler = {
++#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0) */
+ 	.error_detected = igb_io_error_detected,
+ 	.slot_reset = igb_io_slot_reset,
+ 	.resume = igb_io_resume,
Signature · 1 line
1.9.0
#14 lore raw
In reply to Stefan Assmann
Quoted 89 lines · Stefan Assmann

Reworking the igb patches so that each atomic patch requirement is addressed individually, including documentation of the original patch which introduced the change.

Stefan Assmann (13):
backports: remove old igb patches
backports: handle new sriov_configure pointer in struct pci_driver
backports: handle changes to vlan_rx_add/kill pointers in struct
net_device_ops
backports: handle new ndo_set_vf_spoofchk pointer in struct
net_device_ops
backports: handle no_fcs change in struct sk_buff
backports: handle new get_eee and set_eee pointers in struct
ethtool_ops
backports: handle new get_ts_info pointer in struct ethtool_ops
backports: handle new get_module_info and get_module_eeprom pointers
in struct ethtool_ops
backports: handle new rxfh_ndir pointers in struct ethtool_ops
backports: handle argument type change of get_rxnfc in struct
ethtool_ops
backports: handle struct ethtool_cmd MDI changes
backports: handle hwmon_device_register_with_groups API calls
backports: handle pci_error_handlers change to const

 .../network/0017-get_ts_info/igb_get_ts_info.patch | 30 +++++++++
 .../network/0032-sriov_configure/INFO              | 13 ++++
 .../0032-sriov_configure/igb_sriov_configure.patch | 56 ++++++++++++++++
 .../network/0033-ndo_vlan_rx_vid/INFO              | 23 +++++++
 .../0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch | 78 ++++++++++++++++++++++
 .../network/0034-ndo_set_vf_spoofchk/INFO          | 12 ++++
 .../igb_ndo_set_vf_spoofchk.patch                  | 51 ++++++++++++++
 .../network/0035-skb_no_fcs/INFO                   | 12 ++++
 .../network/0035-skb_no_fcs/igb_skb_no_fcs.patch   | 16 +++++
 .../network/0036-ethtool_eee/INFO                  | 12 ++++
 .../network/0036-ethtool_eee/igb_ethtool_eee.patch | 31 +++++++++
 .../network/0037-ethtool_get_module/INFO           | 14 ++++
 .../0037-ethtool_get_module/igb_get_module.patch   | 31 +++++++++
 .../network/0038-ethtool_rxfh_indir/INFO           | 13 ++++
 .../0038-ethtool_rxfh_indir/igb_rxfh_indir.patch   | 48 +++++++++++++
 .../network/0039-ethtool_rxnfc/INFO                | 14 ++++
 .../network/0039-ethtool_rxnfc/igb_rxnfc.patch     | 18 +++++
 .../network/0040-ethtool_cmd_mdix/INFO             | 13 ++++
 .../igb_ethtool_cmd_mdix.patch                     | 49 ++++++++++++++
 .../INFO                                           | 13 ++++
 ...gb-devm_hwmon_device_register_with_groups.patch | 30 +++++++++
 .../network/0042-pci_error_handlers/INFO           | 12 ++++
 .../igb_pci_error_handlers.patch                   | 16 +++++
 .../0001-igb_net_device_ops.patch                  | 54 ---------------
 .../0002-igb_pci_sriov_configure.patch             | 57 ----------------
 .../0001-ethernet-igb/0004-igb_err_handler.patch   | 16 -----
 .../0001-ethernet-igb/0005-igb_mdi.patch           | 49 --------------
 .../0001-ethernet-igb/0006-igb_eee.patch           | 31 ---------
 .../0001-ethernet-igb/0007-igb_ethtool_ops.patch   | 56 ----------------
 .../0001-ethernet-igb/0008-igb_no_fcs.patch        | 16 -----
 .../0001-ethernet-igb/0009-igb_vlan_rx_vid.patch   | 64 ------------------
 .../0001-ethernet-igb/0010-igb_ethtool_ops.patch   | 48 -------------
 .../0001-ethernet-igb/0011-igb_ethtool_ops.patch   | 31 ---------
 .../0012-igb_ndo_set_vf_spoofchk.patch             | 51 --------------
 .../0001-ethernet-igb/0013-igb_hwmon.patch         | 30 ---------
 .../0001-ethernet-igb/INFO                         | 10 ---
 36 files changed, 605 insertions(+), 513 deletions(-)
 create mode 100644 patches/collateral-evolutions/network/0017-get_ts_info/igb_get_ts_info.patch
 create mode 100644 patches/collateral-evolutions/network/0032-sriov_configure/INFO
 create mode 100644 patches/collateral-evolutions/network/0032-sriov_configure/igb_sriov_configure.patch
 create mode 100644 patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/INFO
 create mode 100644 patches/collateral-evolutions/network/0033-ndo_vlan_rx_vid/igb_ndo_vlan_rx_vid.patch
 create mode 100644 patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/INFO
 create mode 100644 patches/collateral-evolutions/network/0034-ndo_set_vf_spoofchk/igb_ndo_set_vf_spoofchk.patch
 create mode 100644 patches/collateral-evolutions/network/0035-skb_no_fcs/INFO
 create mode 100644 patches/collateral-evolutions/network/0035-skb_no_fcs/igb_skb_no_fcs.patch
 create mode 100644 patches/collateral-evolutions/network/0036-ethtool_eee/INFO
 create mode 100644 patches/collateral-evolutions/network/0036-ethtool_eee/igb_ethtool_eee.patch
 create mode 100644 patches/collateral-evolutions/network/0037-ethtool_get_module/INFO
 create mode 100644 patches/collateral-evolutions/network/0037-ethtool_get_module/igb_get_module.patch
 create mode 100644 patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/INFO
 create mode 100644 patches/collateral-evolutions/network/0038-ethtool_rxfh_indir/igb_rxfh_indir.patch
 create mode 100644 patches/collateral-evolutions/network/0039-ethtool_rxnfc/INFO
 create mode 100644 patches/collateral-evolutions/network/0039-ethtool_rxnfc/igb_rxnfc.patch
 create mode 100644 patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/INFO
 create mode 100644 patches/collateral-evolutions/network/0040-ethtool_cmd_mdix/igb_ethtool_cmd_mdix.patch
 create mode 100644 patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/INFO
 create mode 100644 patches/collateral-evolutions/network/0041-devm_hwmon_device_register_with_groups/igb-devm_hwmon_device_register_with_groups.patch
 create mode 100644 patches/collateral-evolutions/network/0042-pci_error_handlers/INFO
 create mode 100644 patches/collateral-evolutions/network/0042-pci_error_handlers/igb_pci_error_handlers.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0001-igb_net_device_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0002-igb_pci_sriov_configure.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0004-igb_err_handler.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0005-igb_mdi.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0006-igb_eee.patch
Quoted 9 lines
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0007-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0008-igb_no_fcs.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0009-igb_vlan_rx_vid.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0010-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0011-igb_ethtool_ops.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0012-igb_ndo_set_vf_spoofchk.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/0013-igb_hwmon.patch
 delete mode 100644 patches/the-way-not-to-do-backports/0001-ethernet-igb/INFO

Thank you for the patches, they were applied, pushed and are included in the backports-20140501 release.

Hauke