netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/9] ixgb: driver update to 1.0.109-k2
@ 2006-05-26 16:51 Kok, Auke
  2006-05-26 16:51 ` [PATCH 1/9] ixgb: fix smp polling race condition Kok, Auke
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:51 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


Hi,

Here are the ixgb driver updates for 1.0.109-k2. This corresponds with
the release of 1.0.109 on e1000.sf.net, and fixes several issues.

e1000 update will come soon...


Summary:

[1] fix smp polling race condition
[2] fix interface losing macaddr on ifdn/up
[3] revert an unwanted fix regarding tso/descriptors
[4] allocate only buffersize needed
[5] remove lock access in the fast path
[6] remove inlines, allow compiler to choose
[7] replace netdev->priv with netdev_priv()
[8] remove changelog
[9] update version, dates


These changes are available through git.

git pull git://lost.foo-projects.org/~ahkok/git/netdev-2.6 ixgb-1.0.109-k2

these patches are against
 netdev-2.6#upstream a24e2513c2d03c9a92739ec6fa7e7208f792881e


Cheers,

Auke


---
 drivers/net/ixgb/Makefile       |    2 -
 drivers/net/ixgb/ixgb.h         |    2 -
 drivers/net/ixgb/ixgb_ee.c      |    2 -
 drivers/net/ixgb/ixgb_ee.h      |    2 -
 drivers/net/ixgb/ixgb_ethtool.c |    6 +-
 drivers/net/ixgb/ixgb_hw.c      |    2 -
 drivers/net/ixgb/ixgb_hw.h      |    2 -
 drivers/net/ixgb/ixgb_ids.h     |    2 -
 drivers/net/ixgb/ixgb_main.c    |  110 +++++++++++----------------------------
 drivers/net/ixgb/ixgb_osdep.h   |    2 -
 drivers/net/ixgb/ixgb_param.c   |    2 -
 11 files changed, 43 insertions(+), 91 deletions(-)


--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/9] ixgb: fix smp polling race condition
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
@ 2006-05-26 16:51 ` Kok, Auke
  2006-05-26 16:51 ` [PATCH 2/9] ixgb: fix interface losing macaddr on ifdn/up Kok, Auke
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:51 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


Moved interrupt masking to before requesting the interrupt from the OS.
Moved interrupt enable to after netif_poll_enable.  This fixes a racy
BUG() where polling would be running on another CPU at the same time
that netif_poll_enable would run.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_main.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 0a0c876..954894b 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -247,6 +247,9 @@ ixgb_up(struct ixgb_adapter *adapter)
 	ixgb_configure_rx(adapter);
 	ixgb_alloc_rx_buffers(adapter);
 
+	/* disable interrupts and get the hardware into a known state */
+	IXGB_WRITE_REG(&adapter->hw, IMC, 0xffffffff);
+
 #ifdef CONFIG_PCI_MSI
 	{
 	boolean_t pcix = (IXGB_READ_REG(&adapter->hw, STATUS) & 
@@ -272,9 +275,6 @@ ixgb_up(struct ixgb_adapter *adapter)
 		return err;
 	}
 
-	/* disable interrupts and get the hardware into a known state */
-	IXGB_WRITE_REG(&adapter->hw, IMC, 0xffffffff);
-
 	if((hw->max_frame_size != max_frame) ||
 		(hw->max_frame_size !=
 		(IXGB_READ_REG(hw, MFS) >> IXGB_MFS_SHIFT))) {
@@ -295,11 +295,12 @@ ixgb_up(struct ixgb_adapter *adapter)
 	}
 
 	mod_timer(&adapter->watchdog_timer, jiffies);
-	ixgb_irq_enable(adapter);
 
 #ifdef CONFIG_IXGB_NAPI
 	netif_poll_enable(netdev);
 #endif
+	ixgb_irq_enable(adapter);
+
 	return 0;
 }
 



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/9] ixgb: fix interface losing macaddr on ifdn/up
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
  2006-05-26 16:51 ` [PATCH 1/9] ixgb: fix smp polling race condition Kok, Auke
@ 2006-05-26 16:51 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 3/9] ixgb: revert an unwanted fix regarding tso/descriptors Kok, Auke
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:51 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


user contributed fix for LAA across down/up, from tonychung00@users.sf.net.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_main.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 954894b..26c777f 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -238,6 +238,7 @@ ixgb_up(struct ixgb_adapter *adapter)
 
 	/* hardware has been reset, we need to reload some things */
 
+	ixgb_rar_set(hw, netdev->dev_addr, 0);
 	ixgb_set_multi(netdev);
 
 	ixgb_restore_vlan(adapter);



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 3/9] ixgb: revert an unwanted fix regarding tso/descriptors
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
  2006-05-26 16:51 ` [PATCH 1/9] ixgb: fix smp polling race condition Kok, Auke
  2006-05-26 16:51 ` [PATCH 2/9] ixgb: fix interface losing macaddr on ifdn/up Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 4/9] ixgb: allocate only buffersize needed Kok, Auke
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


There seemed to be another bug introduced as well as a performance hit
with the addtion of the sentinel descriptor workaround.  Removal of
this workaround appears to prevent the hang.  We'll take a risk
and remove it, as we had never seen the originally reported bug
under linux.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_main.c |   15 +--------------
 1 files changed, 1 insertions(+), 14 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 26c777f..5561ab6 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -1295,7 +1295,6 @@ ixgb_tx_map(struct ixgb_adapter *adapter
 	struct ixgb_buffer *buffer_info;
 	int len = skb->len;
 	unsigned int offset = 0, size, count = 0, i;
-	unsigned int mss = skb_shinfo(skb)->tso_size;
 
 	unsigned int nr_frags = skb_shinfo(skb)->nr_frags;
 	unsigned int f;
@@ -1307,11 +1306,6 @@ ixgb_tx_map(struct ixgb_adapter *adapter
 	while(len) {
 		buffer_info = &tx_ring->buffer_info[i];
 		size = min(len, IXGB_MAX_JUMBO_FRAME_SIZE);
-		/* Workaround for premature desc write-backs
-		 * in TSO mode.  Append 4-byte sentinel desc */
-		if(unlikely(mss && !nr_frags && size == len && size > 8))
-			size -= 4;
-
 		buffer_info->length = size;
 		buffer_info->dma =
 			pci_map_single(adapter->pdev,
@@ -1337,12 +1331,6 @@ ixgb_tx_map(struct ixgb_adapter *adapter
 		while(len) {
 			buffer_info = &tx_ring->buffer_info[i];
 			size = min(len, IXGB_MAX_JUMBO_FRAME_SIZE);
-			/* Workaround for premature desc write-backs
-			 * in TSO mode.  Append 4-byte sentinel desc */
-			if(unlikely(mss && (f == (nr_frags-1)) && (size == len)
-			            && (size > 8)))
-				size -= 4;
-
 			buffer_info->length = size;
 			buffer_info->dma =
 				pci_map_page(adapter->pdev,
@@ -1421,8 +1409,7 @@ ixgb_tx_queue(struct ixgb_adapter *adapt
 #define TXD_USE_COUNT(S) (((S) >> IXGB_MAX_TXD_PWR) + \
 			 (((S) & (IXGB_MAX_DATA_PER_TXD - 1)) ? 1 : 0))
 #define DESC_NEEDED TXD_USE_COUNT(IXGB_MAX_DATA_PER_TXD) + \
-	MAX_SKB_FRAGS * TXD_USE_COUNT(PAGE_SIZE) + 1 \
-	/* one more for TSO workaround */ + 1
+	MAX_SKB_FRAGS * TXD_USE_COUNT(PAGE_SIZE) + 1
 
 static int
 ixgb_xmit_frame(struct sk_buff *skb, struct net_device *netdev)



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 4/9] ixgb: allocate only buffersize needed
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (2 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 3/9] ixgb: revert an unwanted fix regarding tso/descriptors Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 5/9] ixgb: remove lock access in the fast path Kok, Auke
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


In order to help correct window size growth, use the MFS register
to limit the packet sizes received and allocate only the buffer
size necessary

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>

index 0905a82..84a8064 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -574,9 +574,8 @@ ixgb_sw_init(struct ixgb_adapter *adapte
 	hw->subsystem_vendor_id = pdev->subsystem_vendor;
 	hw->subsystem_id = pdev->subsystem_device;

-	adapter->rx_buffer_len = IXGB_RXBUFFER_2048;
-
 	hw->max_frame_size = netdev->mtu + ENET_HEADER_SIZE + ENET_FCS_LENGTH;
+	adapter->rx_buffer_len = hw->max_frame_size;

 	if((hw->device_id == IXGB_DEVICE_ID_82597EX)
 	   || (hw->device_id == IXGB_DEVICE_ID_82597EX_CX4)
@@ -820,21 +819,14 @@ ixgb_setup_rctl(struct ixgb_adapter *ada

 	rctl |= IXGB_RCTL_SECRC;

-	switch (adapter->rx_buffer_len) {
-	case IXGB_RXBUFFER_2048:
-	default:
+	if (adapter->rx_buffer_len <= IXGB_RXBUFFER_2048)
 		rctl |= IXGB_RCTL_BSIZE_2048;
-		break;
-	case IXGB_RXBUFFER_4096:
+	else if (adapter->rx_buffer_len <= IXGB_RXBUFFER_4096)
 		rctl |= IXGB_RCTL_BSIZE_4096;
-		break;
-	case IXGB_RXBUFFER_8192:
+	else if (adapter->rx_buffer_len <= IXGB_RXBUFFER_8192)
 		rctl |= IXGB_RCTL_BSIZE_8192;
-		break;
-	case IXGB_RXBUFFER_16384:
+	else if (adapter->rx_buffer_len <= IXGB_RXBUFFER_16384)
 		rctl |= IXGB_RCTL_BSIZE_16384;
-		break;
-	}

 	IXGB_WRITE_REG(&adapter->hw, RCTL, rctl);
 }
@@ -1551,25 +1543,12 @@ ixgb_change_mtu(struct net_device *netde
 		DPRINTK(PROBE, ERR, "Invalid MTU setting %d\n", new_mtu);
 		return -EINVAL;
 	}
-
-	if((max_frame <= IXGB_MAX_ENET_FRAME_SIZE_WITHOUT_FCS + ENET_FCS_LENGTH)
-	   || (max_frame <= IXGB_RXBUFFER_2048)) {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_2048;
-
-	} else if(max_frame <= IXGB_RXBUFFER_4096) {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_4096;

-	} else if(max_frame <= IXGB_RXBUFFER_8192) {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_8192;
+	adapter->rx_buffer_len = max_frame;

-	} else {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_16384;
-	}
-
 	netdev->mtu = new_mtu;
-
-	if(old_max_frame != max_frame && netif_running(netdev)) {

+	if ((old_max_frame != max_frame) && netif_running(netdev)) {
 		ixgb_down(adapter, TRUE);
 		ixgb_up(adapter);
 	}
---

 drivers/net/ixgb/ixgb_main.c |   35 +++++++----------------------------
 1 files changed, 7 insertions(+), 28 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 5561ab6..b825850 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -576,9 +576,8 @@ ixgb_sw_init(struct ixgb_adapter *adapte
 	hw->subsystem_vendor_id = pdev->subsystem_vendor;
 	hw->subsystem_id = pdev->subsystem_device;
 
-	adapter->rx_buffer_len = IXGB_RXBUFFER_2048;
-
 	hw->max_frame_size = netdev->mtu + ENET_HEADER_SIZE + ENET_FCS_LENGTH;
+	adapter->rx_buffer_len = hw->max_frame_size;
 
 	if((hw->device_id == IXGB_DEVICE_ID_82597EX)
 	   || (hw->device_id == IXGB_DEVICE_ID_82597EX_CX4)
@@ -822,21 +821,14 @@ ixgb_setup_rctl(struct ixgb_adapter *ada
 
 	rctl |= IXGB_RCTL_SECRC;
 
-	switch (adapter->rx_buffer_len) {
-	case IXGB_RXBUFFER_2048:
-	default:
+	if (adapter->rx_buffer_len <= IXGB_RXBUFFER_2048)
 		rctl |= IXGB_RCTL_BSIZE_2048;
-		break;
-	case IXGB_RXBUFFER_4096:
+	else if (adapter->rx_buffer_len <= IXGB_RXBUFFER_4096)
 		rctl |= IXGB_RCTL_BSIZE_4096;
-		break;
-	case IXGB_RXBUFFER_8192:
+	else if (adapter->rx_buffer_len <= IXGB_RXBUFFER_8192)
 		rctl |= IXGB_RCTL_BSIZE_8192;
-		break;
-	case IXGB_RXBUFFER_16384:
+	else if (adapter->rx_buffer_len <= IXGB_RXBUFFER_16384)
 		rctl |= IXGB_RCTL_BSIZE_16384;
-		break;
-	}
 
 	IXGB_WRITE_REG(&adapter->hw, RCTL, rctl);
 }
@@ -1546,24 +1538,11 @@ ixgb_change_mtu(struct net_device *netde
 		return -EINVAL;
 	}
 
-	if((max_frame <= IXGB_MAX_ENET_FRAME_SIZE_WITHOUT_FCS + ENET_FCS_LENGTH)
-	   || (max_frame <= IXGB_RXBUFFER_2048)) {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_2048;
-
-	} else if(max_frame <= IXGB_RXBUFFER_4096) {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_4096;
-
-	} else if(max_frame <= IXGB_RXBUFFER_8192) {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_8192;
-
-	} else {
-		adapter->rx_buffer_len = IXGB_RXBUFFER_16384;
-	}
+	adapter->rx_buffer_len = max_frame;
 
 	netdev->mtu = new_mtu;
 
-	if(old_max_frame != max_frame && netif_running(netdev)) {
-
+	if ((old_max_frame != max_frame) && netif_running(netdev)) {
 		ixgb_down(adapter, TRUE);
 		ixgb_up(adapter);
 	}



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 5/9] ixgb: remove lock access in the fast path
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (3 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 4/9] ixgb: allocate only buffersize needed Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 6/9] ixgb: remove inlines, allow compiler to choose Kok, Auke
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


This mimics a change made in the e1000 driver that imitates a slick
tg3 way of avoiding grabbing the lock around restarting the tx queue.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_main.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index b825850..a714c4d 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -1800,13 +1800,13 @@ ixgb_clean_tx_irq(struct ixgb_adapter *a
 
 	tx_ring->next_to_clean = i;
 
-	spin_lock(&adapter->tx_lock);
-	if(cleaned && netif_queue_stopped(netdev) && netif_carrier_ok(netdev) &&
-	   (IXGB_DESC_UNUSED(tx_ring) > IXGB_TX_QUEUE_WAKE)) {
-
-		netif_wake_queue(netdev);
+	if (unlikely(netif_queue_stopped(netdev))) {
+		spin_lock(&adapter->tx_lock);
+		if (netif_queue_stopped(netdev) && netif_carrier_ok(netdev) &&
+		    (IXGB_DESC_UNUSED(tx_ring) > IXGB_TX_QUEUE_WAKE))
+			netif_wake_queue(netdev);
+		spin_unlock(&adapter->tx_lock);
 	}
-	spin_unlock(&adapter->tx_lock);
 
 	if(adapter->detect_tx_hung) {
 		/* detect a transmit hang in hardware, this serializes the



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 6/9] ixgb: remove inlines, allow compiler to choose
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (4 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 5/9] ixgb: remove lock access in the fast path Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 7/9] ixgb: replace netdev->priv with netdev_priv() Kok, Auke
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


deinline a few large functions as to allow the compiler to pick.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_main.c |   16 ++++++++--------
 1 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index a714c4d..037b5c3 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -203,7 +203,7 @@ module_exit(ixgb_exit_module);
  * @adapter: board private structure
  **/
 
-static inline void
+static void
 ixgb_irq_disable(struct ixgb_adapter *adapter)
 {
 	atomic_inc(&adapter->irq_sem);
@@ -217,7 +217,7 @@ ixgb_irq_disable(struct ixgb_adapter *ad
  * @adapter: board private structure
  **/
 
-static inline void
+static void
 ixgb_irq_enable(struct ixgb_adapter *adapter)
 {
 	if(atomic_dec_and_test(&adapter->irq_sem)) {
@@ -918,7 +918,7 @@ ixgb_free_tx_resources(struct ixgb_adapt
 	adapter->tx_ring.desc = NULL;
 }
 
-static inline void
+static void
 ixgb_unmap_and_free_tx_resource(struct ixgb_adapter *adapter,
 					struct ixgb_buffer *buffer_info)
 {
@@ -1179,7 +1179,7 @@ ixgb_watchdog(unsigned long data)
 #define IXGB_TX_FLAGS_VLAN		0x00000002
 #define IXGB_TX_FLAGS_TSO		0x00000004
 
-static inline int
+static int
 ixgb_tso(struct ixgb_adapter *adapter, struct sk_buff *skb)
 {
 #ifdef NETIF_F_TSO
@@ -1241,7 +1241,7 @@ ixgb_tso(struct ixgb_adapter *adapter, s
 	return 0;
 }
 
-static inline boolean_t
+static boolean_t
 ixgb_tx_csum(struct ixgb_adapter *adapter, struct sk_buff *skb)
 {
 	struct ixgb_context_desc *context_desc;
@@ -1279,7 +1279,7 @@ ixgb_tx_csum(struct ixgb_adapter *adapte
 #define IXGB_MAX_TXD_PWR	14
 #define IXGB_MAX_DATA_PER_TXD	(1<<IXGB_MAX_TXD_PWR)
 
-static inline int
+static int
 ixgb_tx_map(struct ixgb_adapter *adapter, struct sk_buff *skb,
 	    unsigned int first)
 {
@@ -1346,7 +1346,7 @@ ixgb_tx_map(struct ixgb_adapter *adapter
 	return count;
 }
 
-static inline void
+static void
 ixgb_tx_queue(struct ixgb_adapter *adapter, int count, int vlan_id,int tx_flags)
 {
 	struct ixgb_desc_ring *tx_ring = &adapter->tx_ring;
@@ -1849,7 +1849,7 @@ ixgb_clean_tx_irq(struct ixgb_adapter *a
  * @sk_buff: socket buffer with received data
  **/
 
-static inline void
+static void
 ixgb_rx_checksum(struct ixgb_adapter *adapter,
 		 struct ixgb_rx_desc *rx_desc,
 		 struct sk_buff *skb)



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 7/9] ixgb: replace netdev->priv with netdev_priv()
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (5 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 6/9] ixgb: remove inlines, allow compiler to choose Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 8/9] ixgb: remove changelog Kok, Auke
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


fix netdev->priv ==> netdev_priv(netdev)

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_ethtool.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_ethtool.c b/drivers/net/ixgb/ixgb_ethtool.c
index 6d8192f..949f69d 100644
--- a/drivers/net/ixgb/ixgb_ethtool.c
+++ b/drivers/net/ixgb/ixgb_ethtool.c
@@ -254,14 +254,14 @@ ixgb_set_tso(struct net_device *netdev, 
 static uint32_t
 ixgb_get_msglevel(struct net_device *netdev)
 {
-	struct ixgb_adapter *adapter = netdev->priv;
+	struct ixgb_adapter *adapter = netdev_priv(netdev);
 	return adapter->msg_enable;
 }
 
 static void
 ixgb_set_msglevel(struct net_device *netdev, uint32_t data)
 {
-	struct ixgb_adapter *adapter = netdev->priv;
+	struct ixgb_adapter *adapter = netdev_priv(netdev);
 	adapter->msg_enable = data;
 }
 #define IXGB_GET_STAT(_A_, _R_) _A_->stats._R_



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 8/9] ixgb: remove changelog
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (6 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 7/9] ixgb: replace netdev->priv with netdev_priv() Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-26 16:52 ` [PATCH 9/9] ixgb: update version, dates Kok, Auke
  2006-05-27  1:23 ` [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Jeff Garzik
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


same as e1000 - remove the changelog from the driver code itself.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/ixgb_main.c |   16 ----------------
 1 files changed, 0 insertions(+), 16 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index 037b5c3..aecdc00 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -28,22 +28,6 @@
 
 #include "ixgb.h"
 
-/* Change Log
- * 1.0.96 04/19/05
- * - Make needlessly global code static -- bunk@stusta.de
- * - ethtool cleanup -- shemminger@osdl.org
- * - Support for MODULE_VERSION -- linville@tuxdriver.com
- * - add skb_header_cloned check to the tso path -- herbert@apana.org.au
- * 1.0.88 01/05/05
- * - include fix to the condition that determines when to quit NAPI - Robert Olsson
- * - use netif_poll_{disable/enable} to synchronize between NAPI and i/f up/down
- * 1.0.84 10/26/04
- * - reset buffer_info->dma in Tx resource cleanup logic
- * 1.0.83 10/12/04
- * - sparse cleanup - shemminger@osdl.org
- * - fix tx resource cleanup logic
- */
-
 char ixgb_driver_name[] = "ixgb";
 static char ixgb_driver_string[] = "Intel(R) PRO/10GbE Network Driver";
 



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 9/9] ixgb: update version, dates
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (7 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 8/9] ixgb: remove changelog Kok, Auke
@ 2006-05-26 16:52 ` Kok, Auke
  2006-05-27  1:23 ` [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Jeff Garzik
  9 siblings, 0 replies; 11+ messages in thread
From: Kok, Auke @ 2006-05-26 16:52 UTC (permalink / raw)
  To: Garzik, Jeff; +Cc: netdev, Brandeburg, Jesse, Kok, Auke, Kok, Auke


increase the year dates to 2006 and bump the version to 1.0.109-k2

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
---

 drivers/net/ixgb/Makefile       |    2 +-
 drivers/net/ixgb/ixgb.h         |    2 +-
 drivers/net/ixgb/ixgb_ee.c      |    2 +-
 drivers/net/ixgb/ixgb_ee.h      |    2 +-
 drivers/net/ixgb/ixgb_ethtool.c |    2 +-
 drivers/net/ixgb/ixgb_hw.c      |    2 +-
 drivers/net/ixgb/ixgb_hw.h      |    2 +-
 drivers/net/ixgb/ixgb_ids.h     |    2 +-
 drivers/net/ixgb/ixgb_main.c    |    6 +++---
 drivers/net/ixgb/ixgb_osdep.h   |    2 +-
 drivers/net/ixgb/ixgb_param.c   |    2 +-
 11 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/drivers/net/ixgb/Makefile b/drivers/net/ixgb/Makefile
index 7c7aff1..a8a2d3d 100644
--- a/drivers/net/ixgb/Makefile
+++ b/drivers/net/ixgb/Makefile
@@ -1,7 +1,7 @@
 ################################################################################
 #
 # 
-# Copyright(c) 1999 - 2002 Intel Corporation. All rights reserved.
+# Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
 # 
 # This program is free software; you can redistribute it and/or modify it 
 # under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb.h b/drivers/net/ixgb/ixgb.h
index bdbaf5a..a83ef28 100644
--- a/drivers/net/ixgb/ixgb.h
+++ b/drivers/net/ixgb/ixgb.h
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_ee.c b/drivers/net/ixgb/ixgb_ee.c
index 661a46b..8357c55 100644
--- a/drivers/net/ixgb/ixgb_ee.c
+++ b/drivers/net/ixgb/ixgb_ee.c
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_ee.h b/drivers/net/ixgb/ixgb_ee.h
index 5190aa8..bf6fa22 100644
--- a/drivers/net/ixgb/ixgb_ee.h
+++ b/drivers/net/ixgb/ixgb_ee.h
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_ethtool.c b/drivers/net/ixgb/ixgb_ethtool.c
index 949f69d..cf19b89 100644
--- a/drivers/net/ixgb/ixgb_ethtool.c
+++ b/drivers/net/ixgb/ixgb_ethtool.c
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_hw.c b/drivers/net/ixgb/ixgb_hw.c
index 620cad4..f7fa10e 100644
--- a/drivers/net/ixgb/ixgb_hw.c
+++ b/drivers/net/ixgb/ixgb_hw.c
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_hw.h b/drivers/net/ixgb/ixgb_hw.h
index 19513c6..cb45689 100644
--- a/drivers/net/ixgb/ixgb_hw.h
+++ b/drivers/net/ixgb/ixgb_hw.h
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_ids.h b/drivers/net/ixgb/ixgb_ids.h
index e119c05..40a085f 100644
--- a/drivers/net/ixgb/ixgb_ids.h
+++ b/drivers/net/ixgb/ixgb_ids.h
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index aecdc00..57006fb 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
@@ -36,9 +36,9 @@ static char ixgb_driver_string[] = "Inte
 #else
 #define DRIVERNAPI "-NAPI"
 #endif
-#define DRV_VERSION		"1.0.104-k4"DRIVERNAPI
+#define DRV_VERSION		"1.0.109-k2"DRIVERNAPI
 char ixgb_driver_version[] = DRV_VERSION;
-static char ixgb_copyright[] = "Copyright (c) 1999-2005 Intel Corporation.";
+static char ixgb_copyright[] = "Copyright (c) 1999-2006 Intel Corporation.";
 
 /* ixgb_pci_tbl - PCI Device ID Table
  *
diff --git a/drivers/net/ixgb/ixgb_osdep.h b/drivers/net/ixgb/ixgb_osdep.h
index dba2048..ee982fe 100644
--- a/drivers/net/ixgb/ixgb_osdep.h
+++ b/drivers/net/ixgb/ixgb_osdep.h
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 
diff --git a/drivers/net/ixgb/ixgb_param.c b/drivers/net/ixgb/ixgb_param.c
index 388462c..39fbed2 100644
--- a/drivers/net/ixgb/ixgb_param.c
+++ b/drivers/net/ixgb/ixgb_param.c
@@ -1,7 +1,7 @@
 /*******************************************************************************
 
   
-  Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.
+  Copyright(c) 1999 - 2006 Intel Corporation. All rights reserved.
   
   This program is free software; you can redistribute it and/or modify it 
   under the terms of the GNU General Public License as published by the Free 



--
Auke Kok <auke-jan.h.kok@intel.com>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 0/9] ixgb: driver update to 1.0.109-k2
  2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
                   ` (8 preceding siblings ...)
  2006-05-26 16:52 ` [PATCH 9/9] ixgb: update version, dates Kok, Auke
@ 2006-05-27  1:23 ` Jeff Garzik
  9 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2006-05-27  1:23 UTC (permalink / raw)
  To: Kok, Auke; +Cc: netdev, Brandeburg, Jesse, Kok, Auke

Kok, Auke wrote:
> Hi,
> 
> Here are the ixgb driver updates for 1.0.109-k2. This corresponds with
> the release of 1.0.109 on e1000.sf.net, and fixes several issues.
> 
> e1000 update will come soon...
> 
> 
> Summary:
> 
> [1] fix smp polling race condition
> [2] fix interface losing macaddr on ifdn/up
> [3] revert an unwanted fix regarding tso/descriptors
> [4] allocate only buffersize needed
> [5] remove lock access in the fast path
> [6] remove inlines, allow compiler to choose
> [7] replace netdev->priv with netdev_priv()
> [8] remove changelog
> [9] update version, dates
> 
> 
> These changes are available through git.
> 
> git pull git://lost.foo-projects.org/~ahkok/git/netdev-2.6 ixgb-1.0.109-k2

pulled



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2006-05-27  1:23 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-26 16:51 [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Kok, Auke
2006-05-26 16:51 ` [PATCH 1/9] ixgb: fix smp polling race condition Kok, Auke
2006-05-26 16:51 ` [PATCH 2/9] ixgb: fix interface losing macaddr on ifdn/up Kok, Auke
2006-05-26 16:52 ` [PATCH 3/9] ixgb: revert an unwanted fix regarding tso/descriptors Kok, Auke
2006-05-26 16:52 ` [PATCH 4/9] ixgb: allocate only buffersize needed Kok, Auke
2006-05-26 16:52 ` [PATCH 5/9] ixgb: remove lock access in the fast path Kok, Auke
2006-05-26 16:52 ` [PATCH 6/9] ixgb: remove inlines, allow compiler to choose Kok, Auke
2006-05-26 16:52 ` [PATCH 7/9] ixgb: replace netdev->priv with netdev_priv() Kok, Auke
2006-05-26 16:52 ` [PATCH 8/9] ixgb: remove changelog Kok, Auke
2006-05-26 16:52 ` [PATCH 9/9] ixgb: update version, dates Kok, Auke
2006-05-27  1:23 ` [PATCH 0/9] ixgb: driver update to 1.0.109-k2 Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).