All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jeff@garzik.org>
To: Auke Kok <auke-jan.h.kok@intel.com>, netdev@vger.kernel.org
Cc: davem@davemloft.net, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 1/4] Add ETHTOOL_[GS]FLAGS sub-ioctls
Date: Fri, 10 Aug 2007 17:02:27 -0400	[thread overview]
Message-ID: <46BCD263.6050807@garzik.org> (raw)
In-Reply-To: <20070810202426.GA25050@havoc.gtf.org>

Jeff Garzik wrote:
> diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
> index 4a616d7..559a4dc 100644
> --- a/include/linux/netdevice.h
> +++ b/include/linux/netdevice.h
> @@ -341,6 +341,7 @@ struct net_device
>  #define NETIF_F_GSO		2048	/* Enable software GSO. */
>  #define NETIF_F_LLTX		4096	/* LockLess TX */
>  #define NETIF_F_MULTI_QUEUE	16384	/* Has multiple TX/RX queues */
> +#define NETIF_F_LRO		32768	/* large receive offload */
>  
>  	/* Segmentation offload features */
>  #define NETIF_F_GSO_SHIFT	16
> diff --git a/net/core/ethtool.c b/net/core/ethtool.c
> index 2ab0a60..6e8563e 100644
> --- a/net/core/ethtool.c
> +++ b/net/core/ethtool.c
> @@ -109,6 +109,32 @@ int ethtool_op_set_ufo(struct net_device *dev, u32 data)
>  	return 0;
>  }
>  
> +/* the following list of flags are the same as their associated
> + * NETIF_F_xxx values in include/linux/netdevice.h
> + */
> +static const u32 flags_dup_features =
> +	ETH_FLAG_LRO;
> +
> +u32 ethtool_op_get_flags(struct net_device *dev)
> +{
> +	/* in the future, this function will probably contain additional
> +	 * handling for flags which are not so easily handled
> +	 * by a simple masking operation
> +	 */
> +	
> +	return dev->features & flags_dup_features;
> +}
> +
> +int ethtool_op_set_flags(struct net_device *dev, u32 data)
> +{
> +	if (data & ETH_FLAG_LRO)
> +		dev->features |= NETIF_F_LRO;
> +	else
> +		dev->features &= ~NETIF_F_LRO;
> +

And, a side discussion:

This patch copies Auke in adding NETIF_F_LRO.  Is that just for 
temporary merging, or does the net core really not touch it at all?

Because, logically, if NETIF_F_LRO exists nowhere else but this patch, 
we should not add it to dev->features.  LRO knowledge can be contained 
entirely within the driver, if the net core never tests NETIF_F_LRO.

I haven't reviewed the other NETIF_F_XXX flags, but, that logic can be 
applied to any other NETIF_F_XXX flag:  if the net stack isn't using it, 
it's a piece of information specific to that driver.

	Jeff



  parent reply	other threads:[~2007-08-10 21:02 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-10 20:24 [PATCH 1/4] Add ETHTOOL_[GS]FLAGS sub-ioctls Jeff Garzik
2007-08-10 20:25 ` [PATCH 2/4] ethtool: introduce get_sset_count Jeff Garzik
2007-08-10 20:26 ` [PATCH 3/4] Add ETHTOOL_[GS]PFLAGS sub-ioctls Jeff Garzik
2007-08-10 20:45   ` Driver writer hints (was [PATCH 3/4] Add ETHTOOL_[GS]PFLAGS sub-ioctls) Jeff Garzik
2007-08-10 21:01     ` Rick Jones
2007-08-10 21:08       ` Jeff Garzik
2007-08-10 20:26 ` [PATCH 4/4] ethtool: internal simplification Jeff Garzik
2007-08-10 20:56 ` [PATCH 1/4] Add ETHTOOL_[GS]FLAGS sub-ioctls Jeff Garzik
2007-08-15 23:05   ` David Miller
2007-08-10 21:02 ` Jeff Garzik [this message]
2007-08-10 21:11   ` Ben Greear
2007-08-10 22:10     ` David Miller
2007-08-10 22:40       ` Ben Greear
2007-08-10 22:46         ` David Miller
2007-08-10 23:15           ` Rick Jones
2007-08-14 20:38             ` Kok, Auke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46BCD263.6050807@garzik.org \
    --to=jeff@garzik.org \
    --cc=auke-jan.h.kok@intel.com \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.