netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH 3/3] netxen: ethtool fixes
       [not found] ` <20070828115603.981381010@netxen.com>
@ 2007-08-31 10:51   ` Jeff Garzik
  2007-08-31 12:12     ` Dhananjay Phadke
  0 siblings, 1 reply; 4+ messages in thread
From: Jeff Garzik @ 2007-08-31 10:51 UTC (permalink / raw)
  To: dhananjay; +Cc: netdev, rob

dhananjay@netxen.com wrote:
> +static int netxen_nic_set_rx_csum(struct net_device *dev, u32 data)
> +{
> +	struct netxen_adapter *adapter = netdev_priv(dev);
> +	adapter->rx_csum = 0;
> +	return 0;
> +}

Bug:  'data' ignored


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

* Re: [PATCH 3/3] netxen: ethtool fixes
  2007-08-31 10:51   ` Jeff Garzik
@ 2007-08-31 12:12     ` Dhananjay Phadke
  0 siblings, 0 replies; 4+ messages in thread
From: Dhananjay Phadke @ 2007-08-31 12:12 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: netdev, rob

oops, ok regenerating patch 3 only.

On Fri, 31 Aug 2007, Jeff Garzik wrote:

> dhananjay@netxen.com wrote:
> > +static int netxen_nic_set_rx_csum(struct net_device *dev, u32 data)
> > +{
> > +	struct netxen_adapter *adapter = netdev_priv(dev);
> > +	adapter->rx_csum = 0;
> > +	return 0;
> > +}
> 
> Bug:  'data' ignored
> 
> 
> 

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

* [PATCH 3/3] netxen: ethtool fixes
@ 2007-09-03  5:03 Dhananjay Phadke
  2007-09-15 23:36 ` Jeff Garzik
  0 siblings, 1 reply; 4+ messages in thread
From: Dhananjay Phadke @ 2007-09-03  5:03 UTC (permalink / raw)
  To: netdev; +Cc: jeff, rob


Resubmitting the patch. 

This patch improves ethtool support for printing correct ring statistics,
segmentation offload status, etc.

Signed-off by: Dhananjay Phadke <dhananjay@netxen.com>

Index: netdev-2.6/drivers/net/netxen/netxen_nic.h
===================================================================
--- netdev-2.6.orig/drivers/net/netxen/netxen_nic.h
+++ netdev-2.6/drivers/net/netxen/netxen_nic.h
@@ -918,7 +918,7 @@ struct netxen_adapter {
 	u16 link_duplex;
 	u16 state;
 	u16 link_autoneg;
-	int rcsum;
+	int rx_csum;
 	int status;
 	spinlock_t stats_lock;
 
Index: netdev-2.6/drivers/net/netxen/netxen_nic_ethtool.c
===================================================================
--- netdev-2.6.orig/drivers/net/netxen/netxen_nic_ethtool.c
+++ netdev-2.6/drivers/net/netxen/netxen_nic_ethtool.c
@@ -518,17 +518,17 @@ netxen_nic_get_ringparam(struct net_devi
 	ring->rx_jumbo_pending = 0;
 	for (i = 0; i < MAX_RCV_CTX; ++i) {
 		ring->rx_pending += adapter->recv_ctx[i].
-		    rcv_desc[RCV_DESC_NORMAL_CTXID].rcv_pending;
+		    rcv_desc[RCV_DESC_NORMAL_CTXID].max_rx_desc_count;
 		ring->rx_jumbo_pending += adapter->recv_ctx[i].
-		    rcv_desc[RCV_DESC_JUMBO_CTXID].rcv_pending;
+		    rcv_desc[RCV_DESC_JUMBO_CTXID].max_rx_desc_count;
 	}
+	ring->tx_pending = adapter->max_tx_desc_count;
 
-	ring->rx_max_pending = adapter->max_rx_desc_count;
-	ring->tx_max_pending = adapter->max_tx_desc_count;
-	ring->rx_jumbo_max_pending = adapter->max_jumbo_rx_desc_count;
+	ring->rx_max_pending = MAX_RCV_DESCRIPTORS;
+	ring->tx_max_pending = MAX_CMD_DESCRIPTORS_HOST;
+	ring->rx_jumbo_max_pending = MAX_JUMBO_RCV_DESCRIPTORS;
 	ring->rx_mini_max_pending = 0;
 	ring->rx_mini_pending = 0;
-	ring->rx_jumbo_pending = 0;
 }
 
 static void
@@ -731,6 +731,19 @@ netxen_nic_get_ethtool_stats(struct net_
 	}
 }
 
+static u32 netxen_nic_get_rx_csum(struct net_device *dev)
+{
+	struct netxen_adapter *adapter = netdev_priv(dev);
+	return adapter->rx_csum;
+}
+
+static int netxen_nic_set_rx_csum(struct net_device *dev, u32 data)
+{
+	struct netxen_adapter *adapter = netdev_priv(dev);
+	adapter->rx_csum = !!data;
+	return 0;
+}
+
 struct ethtool_ops netxen_nic_ethtool_ops = {
 	.get_settings = netxen_nic_get_settings,
 	.set_settings = netxen_nic_set_settings,
@@ -755,4 +768,7 @@ struct ethtool_ops netxen_nic_ethtool_op
 	.get_strings = netxen_nic_get_strings,
 	.get_stats_count = netxen_nic_get_stats_count,
 	.get_ethtool_stats = netxen_nic_get_ethtool_stats,
+	.get_rx_csum = netxen_nic_get_rx_csum,
+	.set_rx_csum = netxen_nic_set_rx_csum,
+	.get_ufo = ethtool_op_get_ufo,
 };
Index: netdev-2.6/drivers/net/netxen/netxen_nic_main.c
===================================================================
--- netdev-2.6.orig/drivers/net/netxen/netxen_nic_main.c
+++ netdev-2.6/drivers/net/netxen/netxen_nic_main.c
@@ -408,6 +408,7 @@ netxen_nic_probe(struct pci_dev *pdev, c
 	/* This will be reset for mezz cards  */
 	adapter->portnum = pci_func_id;
 	adapter->status   &= ~NETXEN_NETDEV_STATUS;
+	adapter->rx_csum = 1;
 
 	netdev->open		   = netxen_nic_open;
 	netdev->stop		   = netxen_nic_close;
Index: netdev-2.6/drivers/net/netxen/netxen_nic_init.c
===================================================================
--- netdev-2.6.orig/drivers/net/netxen/netxen_nic_init.c
+++ netdev-2.6/drivers/net/netxen/netxen_nic_init.c
@@ -1118,10 +1118,13 @@ netxen_process_rcv(struct netxen_adapter
 
 	skb = (struct sk_buff *)buffer->skb;
 
-	if (likely(netxen_get_sts_status(desc) == STATUS_CKSUM_OK)) {
+	if (likely(adapter->rx_csum &&
+				netxen_get_sts_status(desc) == STATUS_CKSUM_OK)) {
 		adapter->stats.csummed++;
 		skb->ip_summed = CHECKSUM_UNNECESSARY;
-	}
+	} else
+		skb->ip_summed = CHECKSUM_NONE;
+
 	skb->dev = netdev;
 	if (desc_ctx == RCV_DESC_LRO_CTXID) {
 		/* True length was only available on the last pkt */

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

* Re: [PATCH 3/3] netxen: ethtool fixes
  2007-09-03  5:03 [PATCH 3/3] netxen: ethtool fixes Dhananjay Phadke
@ 2007-09-15 23:36 ` Jeff Garzik
  0 siblings, 0 replies; 4+ messages in thread
From: Jeff Garzik @ 2007-09-15 23:36 UTC (permalink / raw)
  To: Dhananjay Phadke; +Cc: netdev, rob

Dhananjay Phadke wrote:
> Resubmitting the patch. 
> 
> This patch improves ethtool support for printing correct ring statistics,
> segmentation offload status, etc.
> 
> Signed-off by: Dhananjay Phadke <dhananjay@netxen.com>
> 

is this for 2.6.23 or 2.6.24?



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

end of thread, other threads:[~2007-09-15 23:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-03  5:03 [PATCH 3/3] netxen: ethtool fixes Dhananjay Phadke
2007-09-15 23:36 ` Jeff Garzik
     [not found] <20070828115324.839681763@netxen.com>
     [not found] ` <20070828115603.981381010@netxen.com>
2007-08-31 10:51   ` Jeff Garzik
2007-08-31 12:12     ` Dhananjay Phadke

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).