lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9929d2390906021602o34ad0814u129c97e9b84886d2@mail.gmail.com>
Date:	Tue, 2 Jun 2009 16:02:23 -0700
From:	Jeff Kirsher <jeffrey.t.kirsher@...el.com>
To:	Chaitanya Lala <clala@...erbed.com>
Cc:	netdev@...r.kernel.org
Subject: Re: [PATCH net-next-2.6 1/1] e1000e: Expose MDI-X status via ethtool 
	change

On Wed, May 27, 2009 at 4:15 PM, Chaitanya Lala <clala@...erbed.com> wrote:
> Ethtool is a standard way of getting information about ethernet
> interfaces. We enhance ethtool kernel interface & e1000e to make
> the MDI-X status readable via ethtool in userspace.
>
> Signed-off-by: Chaitanya Lala <clala@...erbed.com>
> Signed-off-by: Arthur Jones <ajones@...erbed.com>
> ---
>  drivers/net/e1000e/ethtool.c |    8 ++++++++
>  include/linux/ethtool.h      |    8 +++++++-
>  2 files changed, 15 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/e1000e/ethtool.c b/drivers/net/e1000e/ethtool.c
> index 4d25ede..b6aea6b 100644
> --- a/drivers/net/e1000e/ethtool.c
> +++ b/drivers/net/e1000e/ethtool.c
> @@ -167,6 +167,14 @@ static int e1000_get_settings(struct net_device *netdev,
>
>        ecmd->autoneg = ((hw->phy.media_type == e1000_media_type_fiber) ||
>                         hw->mac.autoneg) ? AUTONEG_ENABLE : AUTONEG_DISABLE;
> +
> +       /* MDI-X => 2; MDI =>1; Invalid =>0 */
> +       if ((hw->phy.media_type == e1000_media_type_copper) &&
> +               !hw->mac.get_link_status)
> +               ecmd->is_mdix = hw->phy.is_mdix ? MDI_X : MDI;
> +       else
> +               ecmd->is_mdix = MDI_INVALID;
> +
>        return 0;
>  }
>
> diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h
> index 380b042..b553bdb 100644
> --- a/include/linux/ethtool.h
> +++ b/include/linux/ethtool.h
> @@ -30,7 +30,8 @@ struct ethtool_cmd {
>        __u32   maxtxpkt;       /* Tx pkts before generating tx int */
>        __u32   maxrxpkt;       /* Rx pkts before generating rx int */
>        __u16   speed_hi;
> -       __u16   reserved2;
> +       __u8    is_mdix;
> +       __u8    reserved2;
>        __u32   lp_advertising; /* Features the link partner advertises */
>        __u32   reserved[2];
>  };
> @@ -632,6 +633,11 @@ struct ethtool_ops {
>  #define AUTONEG_DISABLE                0x00
>  #define AUTONEG_ENABLE         0x01
>
> +/* Mode MDI or MDI-X */
> +#define MDI_INVALID 0x00
> +#define MDI         0x01
> +#define MDI_X       0x02
> +
>  /* Wake-On-Lan options. */
>  #define WAKE_PHY               (1 << 0)
>  #define WAKE_UCAST             (1 << 1)
> --
> 1.6.0.4
>

I have pulled this into my queue for testing and submission, thanks.

-- 
Cheers,
Jeff
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ