Subject: Re: [PATCH V2 1/1] tun: change speed from 10M to dynamically configured

From: Sergei Shtylyov <[email-masked]>
Date: Fri, 13 Feb 2015 13:37:58 +0300

Hello.

On 2/13/2015 6:35 AM, Zhu Yanjun wrote:

> The default speed of normal nic is 1000M while the default speed
> of tun is 10M. Now the default speed of tun is changed to 1000M.
> And there are 3 options: 10M, 100M and 1000M to the speed of tun.
> The command "ethtool -s tun0 speed 10/100/1000" can configure the
> speed of tun dynamically.

> CC: Michael S. Tsirkin <[email-masked]>
> CC: Jason Wang <[email-masked]>
> CC: Al Viro <[email-masked]>
> Reviewed-by: Sergei Shtylyov <[email-masked]>
> Signed-off-by: Zhu Yanjun <[email-masked]>
> ---
>   drivers/net/tun.c           | 42 +++++++++++++++++++++++++++++++++++++++++-
>   include/uapi/linux/if_tun.h |  5 +++++
>   2 files changed, 46 insertions(+), 1 deletion(-)

> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
> index 8c8dc16..0ee36f1 100644
> --- a/drivers/net/tun.c
> +++ b/drivers/net/tun.c
[...]
> @@ -2257,9 +2260,18 @@ static struct miscdevice tun_miscdev = {
>
>   static int tun_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
>   {
> +	struct tun_struct *tun = netdev_priv(dev);
> +
> +	/* Get the speed of tun */
> +	if (tun->flags & TUN_CTRL_SPD_1000) {
> +		ethtool_cmd_speed_set(cmd, SPEED_1000);
> +	} else if (tun->flags & TUN_CTRL_SPD_100) {
> +		ethtool_cmd_speed_set(cmd, SPEED_100);
> +	} else
> +		ethtool_cmd_speed_set(cmd, SPEED_10);

    I probably missed it in the previous version: {} not needed here at all. 
Please remove to comply with Documentation/CodingStyle.

[...]

WBR, Sergei