RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-15 Thread KY Srinivasan


> -Original Message-
> From: KY Srinivasan
> Sent: Friday, April 15, 2016 9:01 AM
> To: 'Alexander Duyck' <alexander.du...@gmail.com>
> Cc: David Miller <da...@davemloft.net>; Netdev
> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> Ronciak <john.ronc...@intel.com>; intel-wired-lan  l...@lists.osuosl.org>
> Subject: RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> 
> 
> > -Original Message-
> > From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> > Sent: Friday, April 15, 2016 8:40 AM
> > To: KY Srinivasan <k...@microsoft.com>
> > Cc: David Miller <da...@davemloft.net>; Netdev
> > <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> > de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> > <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
> > e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> > Ronciak <john.ronc...@intel.com>; intel-wired-lan  > l...@lists.osuosl.org>
> > Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> > (Hyper-V)
> >
> > On Thu, Apr 14, 2016 at 7:49 PM, KY Srinivasan <k...@microsoft.com>
> wrote:
> > >
> > >
> > >> -Original Message-
> > >> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> > >> Sent: Thursday, April 14, 2016 4:18 PM
> > >> To: KY Srinivasan <k...@microsoft.com>
> > >> Cc: David Miller <da...@davemloft.net>; Netdev
> > >> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> > >> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> > >> <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
> > >> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com;
> > John
> > >> Ronciak <john.ronc...@intel.com>; intel-wired-lan  > >> l...@lists.osuosl.org>
> > >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows
> hosts
> > >> (Hyper-V)
> > >>
> > >> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan <k...@microsoft.com>
> > >> wrote:
> > >> > On Hyper-V, the VF/PF communication is a via software mediated
> path
> > >> > as opposed to the hardware mailbox. Make the necessary
> > >> > adjustments to support Hyper-V.
> > >> >
> > >> > Signed-off-by: K. Y. Srinivasan <k...@microsoft.com>
> > >> > ---
> > >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
> > >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
> > >> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
> > >> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
> > >> +
> > >> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
> > >> >  5 files changed, 201 insertions(+), 18 deletions(-)
> > >> >
> > >> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> > index 5ac60ee..f8d2a0b 100644
> > >> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
> > >> >
> > >> >  enum ixgbevf_boards {
> > >> > board_82599_vf,
> > >> > +   board_82599_vf_hv,
> > >> > board_X540_vf,
> > >> > +   board_X540_vf_hv,
> > >> > board_X550_vf,
> > >> > +   board_X550_vf_hv,
> > >> > board_X550EM_x_vf,
> > >> > +   board_X550EM_x_vf_hv,
> > >> >  };
> > >> >
> > >> >  enum ixgbevf_xcast_modes {
> > >> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
> > >> ixgbevf_X550_vf_info;
> > >> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
> > >> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
> > >> >
> > >> > +
> > >> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
>

RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-15 Thread KY Srinivasan


> -Original Message-
> From: KY Srinivasan
> Sent: Friday, April 15, 2016 9:01 AM
> To: 'Alexander Duyck' 
> Cc: David Miller ; Netdev
> ; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> ; Jason Wang ;
> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> Ronciak ; intel-wired-lan  l...@lists.osuosl.org>
> Subject: RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> 
> 
> > -Original Message-
> > From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> > Sent: Friday, April 15, 2016 8:40 AM
> > To: KY Srinivasan 
> > Cc: David Miller ; Netdev
> > ; linux-kernel@vger.kernel.org;
> > de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> > ; Jason Wang ;
> > e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> > Ronciak ; intel-wired-lan  > l...@lists.osuosl.org>
> > Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> > (Hyper-V)
> >
> > On Thu, Apr 14, 2016 at 7:49 PM, KY Srinivasan 
> wrote:
> > >
> > >
> > >> -Original Message-
> > >> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> > >> Sent: Thursday, April 14, 2016 4:18 PM
> > >> To: KY Srinivasan 
> > >> Cc: David Miller ; Netdev
> > >> ; linux-kernel@vger.kernel.org;
> > >> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> > >> ; Jason Wang ;
> > >> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com;
> > John
> > >> Ronciak ; intel-wired-lan  > >> l...@lists.osuosl.org>
> > >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows
> hosts
> > >> (Hyper-V)
> > >>
> > >> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan 
> > >> wrote:
> > >> > On Hyper-V, the VF/PF communication is a via software mediated
> path
> > >> > as opposed to the hardware mailbox. Make the necessary
> > >> > adjustments to support Hyper-V.
> > >> >
> > >> > Signed-off-by: K. Y. Srinivasan 
> > >> > ---
> > >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
> > >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
> > >> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
> > >> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
> > >> +
> > >> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
> > >> >  5 files changed, 201 insertions(+), 18 deletions(-)
> > >> >
> > >> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> > index 5ac60ee..f8d2a0b 100644
> > >> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > >> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
> > >> >
> > >> >  enum ixgbevf_boards {
> > >> > board_82599_vf,
> > >> > +   board_82599_vf_hv,
> > >> > board_X540_vf,
> > >> > +   board_X540_vf_hv,
> > >> > board_X550_vf,
> > >> > +   board_X550_vf_hv,
> > >> > board_X550EM_x_vf,
> > >> > +   board_X550EM_x_vf_hv,
> > >> >  };
> > >> >
> > >> >  enum ixgbevf_xcast_modes {
> > >> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
> > >> ixgbevf_X550_vf_info;
> > >> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
> > >> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
> > >> >
> > >> > +
> > >> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> > >> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> > >> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> > >> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> > >> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> > >> > +
> > >> >  /* needed by ethtool.c */
> > >> >  extern const char ixgbevf_driver_name[];
> > >> >  extern const char ixgbevf_driver_version[];
> > >> > diff --git a

RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-15 Thread KY Srinivasan


> -Original Message-
> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> Sent: Friday, April 15, 2016 8:40 AM
> To: KY Srinivasan <k...@microsoft.com>
> Cc: David Miller <da...@davemloft.net>; Netdev
> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> Ronciak <john.ronc...@intel.com>; intel-wired-lan  l...@lists.osuosl.org>
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> On Thu, Apr 14, 2016 at 7:49 PM, KY Srinivasan <k...@microsoft.com> wrote:
> >
> >
> >> -Original Message-
> >> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> >> Sent: Thursday, April 14, 2016 4:18 PM
> >> To: KY Srinivasan <k...@microsoft.com>
> >> Cc: David Miller <da...@davemloft.net>; Netdev
> >> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> >> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> >> <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
> >> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com;
> John
> >> Ronciak <john.ronc...@intel.com>; intel-wired-lan  >> l...@lists.osuosl.org>
> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> >> (Hyper-V)
> >>
> >> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan <k...@microsoft.com>
> >> wrote:
> >> > On Hyper-V, the VF/PF communication is a via software mediated path
> >> > as opposed to the hardware mailbox. Make the necessary
> >> > adjustments to support Hyper-V.
> >> >
> >> > Signed-off-by: K. Y. Srinivasan <k...@microsoft.com>
> >> > ---
> >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
> >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
> >> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
> >> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
> >> +
> >> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
> >> >  5 files changed, 201 insertions(+), 18 deletions(-)
> >> >
> >> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> > index 5ac60ee..f8d2a0b 100644
> >> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
> >> >
> >> >  enum ixgbevf_boards {
> >> > board_82599_vf,
> >> > +   board_82599_vf_hv,
> >> > board_X540_vf,
> >> > +   board_X540_vf_hv,
> >> > board_X550_vf,
> >> > +   board_X550_vf_hv,
> >> > board_X550EM_x_vf,
> >> > +   board_X550EM_x_vf_hv,
> >> >  };
> >> >
> >> >  enum ixgbevf_xcast_modes {
> >> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
> >> ixgbevf_X550_vf_info;
> >> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
> >> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
> >> >
> >> > +
> >> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> >> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> >> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> >> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> >> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> >> > +
> >> >  /* needed by ethtool.c */
> >> >  extern const char ixgbevf_driver_name[];
> >> >  extern const char ixgbevf_driver_version[];
> >> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> > index 007cbe0..4a0ffac 100644
> >> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> > @@ -49,6 +49,7 @@
> >> >  #include 
> >> >  #include 
> >> >  #include 
> >> > +#include 
> >> >
> >> >  #include "ixgbevf.h"
> >&

RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-15 Thread KY Srinivasan


> -Original Message-
> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> Sent: Friday, April 15, 2016 8:40 AM
> To: KY Srinivasan 
> Cc: David Miller ; Netdev
> ; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> ; Jason Wang ;
> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> Ronciak ; intel-wired-lan  l...@lists.osuosl.org>
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> On Thu, Apr 14, 2016 at 7:49 PM, KY Srinivasan  wrote:
> >
> >
> >> -Original Message-
> >> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> >> Sent: Thursday, April 14, 2016 4:18 PM
> >> To: KY Srinivasan 
> >> Cc: David Miller ; Netdev
> >> ; linux-kernel@vger.kernel.org;
> >> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> >> ; Jason Wang ;
> >> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com;
> John
> >> Ronciak ; intel-wired-lan  >> l...@lists.osuosl.org>
> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> >> (Hyper-V)
> >>
> >> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan 
> >> wrote:
> >> > On Hyper-V, the VF/PF communication is a via software mediated path
> >> > as opposed to the hardware mailbox. Make the necessary
> >> > adjustments to support Hyper-V.
> >> >
> >> > Signed-off-by: K. Y. Srinivasan 
> >> > ---
> >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
> >> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
> >> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
> >> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
> >> +
> >> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
> >> >  5 files changed, 201 insertions(+), 18 deletions(-)
> >> >
> >> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> > index 5ac60ee..f8d2a0b 100644
> >> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> >> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
> >> >
> >> >  enum ixgbevf_boards {
> >> > board_82599_vf,
> >> > +   board_82599_vf_hv,
> >> > board_X540_vf,
> >> > +   board_X540_vf_hv,
> >> > board_X550_vf,
> >> > +   board_X550_vf_hv,
> >> > board_X550EM_x_vf,
> >> > +   board_X550EM_x_vf_hv,
> >> >  };
> >> >
> >> >  enum ixgbevf_xcast_modes {
> >> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
> >> ixgbevf_X550_vf_info;
> >> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
> >> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
> >> >
> >> > +
> >> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> >> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> >> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> >> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> >> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> >> > +
> >> >  /* needed by ethtool.c */
> >> >  extern const char ixgbevf_driver_name[];
> >> >  extern const char ixgbevf_driver_version[];
> >> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> > index 007cbe0..4a0ffac 100644
> >> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> >> > @@ -49,6 +49,7 @@
> >> >  #include 
> >> >  #include 
> >> >  #include 
> >> > +#include 
> >> >
> >> >  #include "ixgbevf.h"
> >> >
> >> > @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
> >> > "Copyright (c) 2009 - 2015 Intel Corporation.";
> >> >
> >> >  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
> >> > -   [board_82599_vf] = _82599_vf_info,
> >> > -   [board_X540_vf]  = _X540_vf_info,
> >>

Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-15 Thread Alexander Duyck
On Thu, Apr 14, 2016 at 7:49 PM, KY Srinivasan <k...@microsoft.com> wrote:
>
>
>> -Original Message-
>> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
>> Sent: Thursday, April 14, 2016 4:18 PM
>> To: KY Srinivasan <k...@microsoft.com>
>> Cc: David Miller <da...@davemloft.net>; Netdev
>> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
>> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
>> <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
>> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
>> Ronciak <john.ronc...@intel.com>; intel-wired-lan > l...@lists.osuosl.org>
>> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
>> (Hyper-V)
>>
>> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan <k...@microsoft.com>
>> wrote:
>> > On Hyper-V, the VF/PF communication is a via software mediated path
>> > as opposed to the hardware mailbox. Make the necessary
>> > adjustments to support Hyper-V.
>> >
>> > Signed-off-by: K. Y. Srinivasan <k...@microsoft.com>
>> > ---
>> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
>> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
>> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
>> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
>> +
>> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
>> >  5 files changed, 201 insertions(+), 18 deletions(-)
>> >
>> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> > index 5ac60ee..f8d2a0b 100644
>> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
>> >
>> >  enum ixgbevf_boards {
>> > board_82599_vf,
>> > +   board_82599_vf_hv,
>> > board_X540_vf,
>> > +   board_X540_vf_hv,
>> > board_X550_vf,
>> > +   board_X550_vf_hv,
>> > board_X550EM_x_vf,
>> > +   board_X550EM_x_vf_hv,
>> >  };
>> >
>> >  enum ixgbevf_xcast_modes {
>> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
>> ixgbevf_X550_vf_info;
>> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
>> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
>> >
>> > +
>> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
>> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
>> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
>> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
>> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
>> > +
>> >  /* needed by ethtool.c */
>> >  extern const char ixgbevf_driver_name[];
>> >  extern const char ixgbevf_driver_version[];
>> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> > index 007cbe0..4a0ffac 100644
>> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> > @@ -49,6 +49,7 @@
>> >  #include 
>> >  #include 
>> >  #include 
>> > +#include 
>> >
>> >  #include "ixgbevf.h"
>> >
>> > @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
>> > "Copyright (c) 2009 - 2015 Intel Corporation.";
>> >
>> >  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
>> > -   [board_82599_vf] = _82599_vf_info,
>> > -   [board_X540_vf]  = _X540_vf_info,
>> > -   [board_X550_vf]  = _X550_vf_info,
>> > -   [board_X550EM_x_vf] = _X550EM_x_vf_info,
>> > +   [board_82599_vf]= _82599_vf_info,
>> > +   [board_82599_vf_hv] = _82599_vf_hv_info,
>> > +   [board_X540_vf] = _X540_vf_info,
>> > +   [board_X540_vf_hv]  = _X540_vf_hv_info,
>> > +   [board_X550_vf] = _X550_vf_info,
>> > +   [board_X550_vf_hv]  = _X550_vf_hv_info,
>> > +   [board_X550EM_x_vf] = _X550EM_x_vf_info,
>> > +   [board_X550EM_x_vf_hv]  = _X550EM_x_vf_hv_info,
>> >  };
>> >
>> >  /* ixgbevf_pci_tbl - PCI Device ID Table
>> > @@ -78

Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-15 Thread Alexander Duyck
On Thu, Apr 14, 2016 at 7:49 PM, KY Srinivasan  wrote:
>
>
>> -Original Message-
>> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
>> Sent: Thursday, April 14, 2016 4:18 PM
>> To: KY Srinivasan 
>> Cc: David Miller ; Netdev
>> ; linux-kernel@vger.kernel.org;
>> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
>> ; Jason Wang ;
>> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
>> Ronciak ; intel-wired-lan > l...@lists.osuosl.org>
>> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
>> (Hyper-V)
>>
>> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan 
>> wrote:
>> > On Hyper-V, the VF/PF communication is a via software mediated path
>> > as opposed to the hardware mailbox. Make the necessary
>> > adjustments to support Hyper-V.
>> >
>> > Signed-off-by: K. Y. Srinivasan 
>> > ---
>> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
>> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
>> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
>> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
>> +
>> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
>> >  5 files changed, 201 insertions(+), 18 deletions(-)
>> >
>> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> > index 5ac60ee..f8d2a0b 100644
>> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
>> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
>> >
>> >  enum ixgbevf_boards {
>> > board_82599_vf,
>> > +   board_82599_vf_hv,
>> > board_X540_vf,
>> > +   board_X540_vf_hv,
>> > board_X550_vf,
>> > +   board_X550_vf_hv,
>> > board_X550EM_x_vf,
>> > +   board_X550EM_x_vf_hv,
>> >  };
>> >
>> >  enum ixgbevf_xcast_modes {
>> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
>> ixgbevf_X550_vf_info;
>> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
>> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
>> >
>> > +
>> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
>> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
>> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
>> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
>> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
>> > +
>> >  /* needed by ethtool.c */
>> >  extern const char ixgbevf_driver_name[];
>> >  extern const char ixgbevf_driver_version[];
>> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> > index 007cbe0..4a0ffac 100644
>> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
>> > @@ -49,6 +49,7 @@
>> >  #include 
>> >  #include 
>> >  #include 
>> > +#include 
>> >
>> >  #include "ixgbevf.h"
>> >
>> > @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
>> > "Copyright (c) 2009 - 2015 Intel Corporation.";
>> >
>> >  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
>> > -   [board_82599_vf] = _82599_vf_info,
>> > -   [board_X540_vf]  = _X540_vf_info,
>> > -   [board_X550_vf]  = _X550_vf_info,
>> > -   [board_X550EM_x_vf] = _X550EM_x_vf_info,
>> > +   [board_82599_vf]= _82599_vf_info,
>> > +   [board_82599_vf_hv] = _82599_vf_hv_info,
>> > +   [board_X540_vf] = _X540_vf_info,
>> > +   [board_X540_vf_hv]  = _X540_vf_hv_info,
>> > +   [board_X550_vf] = _X550_vf_info,
>> > +   [board_X550_vf_hv]  = _X550_vf_hv_info,
>> > +   [board_X550EM_x_vf] = _X550EM_x_vf_info,
>> > +   [board_X550EM_x_vf_hv]  = _X550EM_x_vf_hv_info,
>> >  };
>> >
>> >  /* ixgbevf_pci_tbl - PCI Device ID Table
>> > @@ -78,9 +83,13 @@ static const struct ixgbevf_info *ixgbevf_info_tbl[] =
>> {
>> >   */
>> >  static const struct pci_device_id ixgbevf_pci_tbl[] = {
>> > {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF), board_8259

RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> Sent: Thursday, April 14, 2016 4:18 PM
> To: KY Srinivasan <k...@microsoft.com>
> Cc: David Miller <da...@davemloft.net>; Netdev
> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> <a...@canonical.com>; Jason Wang <jasow...@redhat.com>;
> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> Ronciak <john.ronc...@intel.com>; intel-wired-lan  l...@lists.osuosl.org>
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan <k...@microsoft.com>
> wrote:
> > On Hyper-V, the VF/PF communication is a via software mediated path
> > as opposed to the hardware mailbox. Make the necessary
> > adjustments to support Hyper-V.
> >
> > Signed-off-by: K. Y. Srinivasan <k...@microsoft.com>
> > ---
> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
> +
> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
> >  5 files changed, 201 insertions(+), 18 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > index 5ac60ee..f8d2a0b 100644
> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
> >
> >  enum ixgbevf_boards {
> > board_82599_vf,
> > +   board_82599_vf_hv,
> > board_X540_vf,
> > +   board_X540_vf_hv,
> > board_X550_vf,
> > +   board_X550_vf_hv,
> > board_X550EM_x_vf,
> > +   board_X550EM_x_vf_hv,
> >  };
> >
> >  enum ixgbevf_xcast_modes {
> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
> ixgbevf_X550_vf_info;
> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
> >
> > +
> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> > +
> >  /* needed by ethtool.c */
> >  extern const char ixgbevf_driver_name[];
> >  extern const char ixgbevf_driver_version[];
> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> > index 007cbe0..4a0ffac 100644
> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> > @@ -49,6 +49,7 @@
> >  #include 
> >  #include 
> >  #include 
> > +#include 
> >
> >  #include "ixgbevf.h"
> >
> > @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
> > "Copyright (c) 2009 - 2015 Intel Corporation.";
> >
> >  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
> > -   [board_82599_vf] = _82599_vf_info,
> > -   [board_X540_vf]  = _X540_vf_info,
> > -   [board_X550_vf]  = _X550_vf_info,
> > -   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> > +   [board_82599_vf]= _82599_vf_info,
> > +   [board_82599_vf_hv] = _82599_vf_hv_info,
> > +   [board_X540_vf] = _X540_vf_info,
> > +   [board_X540_vf_hv]  = _X540_vf_hv_info,
> > +   [board_X550_vf] = _X550_vf_info,
> > +   [board_X550_vf_hv]  = _X550_vf_hv_info,
> > +   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> > +   [board_X550EM_x_vf_hv]  = _X550EM_x_vf_hv_info,
> >  };
> >
> >  /* ixgbevf_pci_tbl - PCI Device ID Table
> > @@ -78,9 +83,13 @@ static const struct ixgbevf_info *ixgbevf_info_tbl[] =
> {
> >   */
> >  static const struct pci_device_id ixgbevf_pci_tbl[] = {
> > {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF), board_82599_vf },
> > +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF_HV),
> board_82599_vf_hv },
> > {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF), board_X540_vf },
> > +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF_HV),

RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> Sent: Thursday, April 14, 2016 4:18 PM
> To: KY Srinivasan 
> Cc: David Miller ; Netdev
> ; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; Robo Bot
> ; Jason Wang ;
> e...@mellanox.com; ja...@mellanox.com; yevge...@mellanox.com; John
> Ronciak ; intel-wired-lan  l...@lists.osuosl.org>
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan 
> wrote:
> > On Hyper-V, the VF/PF communication is a via software mediated path
> > as opposed to the hardware mailbox. Make the necessary
> > adjustments to support Hyper-V.
> >
> > Signed-off-by: K. Y. Srinivasan 
> > ---
> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
> >  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
> >  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
> >  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138
> +
> >  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
> >  5 files changed, 201 insertions(+), 18 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > index 5ac60ee..f8d2a0b 100644
> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> > @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
> >
> >  enum ixgbevf_boards {
> > board_82599_vf,
> > +   board_82599_vf_hv,
> > board_X540_vf,
> > +   board_X540_vf_hv,
> > board_X550_vf,
> > +   board_X550_vf_hv,
> > board_X550EM_x_vf,
> > +   board_X550EM_x_vf_hv,
> >  };
> >
> >  enum ixgbevf_xcast_modes {
> > @@ -477,6 +481,13 @@ extern const struct ixgbevf_info
> ixgbevf_X550_vf_info;
> >  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
> >  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
> >
> > +
> > +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> > +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> > +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> > +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> > +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> > +
> >  /* needed by ethtool.c */
> >  extern const char ixgbevf_driver_name[];
> >  extern const char ixgbevf_driver_version[];
> > diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> > index 007cbe0..4a0ffac 100644
> > --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> > +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> > @@ -49,6 +49,7 @@
> >  #include 
> >  #include 
> >  #include 
> > +#include 
> >
> >  #include "ixgbevf.h"
> >
> > @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
> > "Copyright (c) 2009 - 2015 Intel Corporation.";
> >
> >  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
> > -   [board_82599_vf] = _82599_vf_info,
> > -   [board_X540_vf]  = _X540_vf_info,
> > -   [board_X550_vf]  = _X550_vf_info,
> > -   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> > +   [board_82599_vf]= _82599_vf_info,
> > +   [board_82599_vf_hv] = _82599_vf_hv_info,
> > +   [board_X540_vf] = _X540_vf_info,
> > +   [board_X540_vf_hv]  = _X540_vf_hv_info,
> > +   [board_X550_vf] = _X550_vf_info,
> > +   [board_X550_vf_hv]  = _X550_vf_hv_info,
> > +   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> > +   [board_X550EM_x_vf_hv]  = _X550EM_x_vf_hv_info,
> >  };
> >
> >  /* ixgbevf_pci_tbl - PCI Device ID Table
> > @@ -78,9 +83,13 @@ static const struct ixgbevf_info *ixgbevf_info_tbl[] =
> {
> >   */
> >  static const struct pci_device_id ixgbevf_pci_tbl[] = {
> > {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF), board_82599_vf },
> > +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF_HV),
> board_82599_vf_hv },
> > {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF), board_X540_vf },
> > +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF_HV),
> board_X540_vf_hv },
> > {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550_VF), board_X550_vf },
> > +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550_VF_HV),
> board_X550_vf_hv },
> > {PCI_V

RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> Sent: Thursday, April 14, 2016 5:19 PM
> To: KY Srinivasan <k...@microsoft.com>
> Cc: Rustad, Mark D <mark.d.rus...@intel.com>; David Miller
> <da...@davemloft.net>; netdev <net...@vger.kernel.org>; linux-
> ker...@vger.kernel.org; de...@linuxdriverproject.org; o...@aepfle.de;
> a...@canonical.com; jasow...@redhat.com; e...@mellanox.com;
> ja...@mellanox.com; yevge...@mellanox.com; Ronciak, John
> <john.ronc...@intel.com>; intel-wired-...@linuxonhyperv.com
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> On Thu, Apr 14, 2016 at 5:11 PM, KY Srinivasan <k...@microsoft.com> wrote:
> >
> >
> >> -Original Message-
> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> >> Sent: Thursday, April 14, 2016 5:07 PM
> >> To: KY Srinivasan <k...@microsoft.com>
> >> Cc: David Miller <da...@davemloft.net>; netdev
> >> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> >> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>;
> intel-
> >> wired-...@linuxonhyperv.com
> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> >> (Hyper-V)
> >>
> >> KY Srinivasan <k...@microsoft.com> wrote:
> >>
> >> >
> >> >
> >> >> -Original Message-
> >> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> >> >> Sent: Thursday, April 14, 2016 4:01 PM
> >> >> To: KY Srinivasan <k...@microsoft.com>
> >> >> Cc: David Miller <da...@davemloft.net>; netdev
> >> >> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> >> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> >> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> >> >> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>;
> >> intel-
> >> >> wired-...@linuxonhyperv.com
> >> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows
> hosts
> >> >> (Hyper-V)
> >> >>
> >> >> Some comments below:
> >> >
> >> > Mark,
> >> >
> >> > Thank you for the comments. I will address them and repost the
> patches.
> >> >
> >> > Regards,
> >> >
> >> > K. Y
> >>
> >> Please look closely at Alex's comments. I think they are much more
> >> important.
> >
> > I am looking at Alex's comments as I am writing this.
> >
> 
> On additional thought that just occurred to me after looking over the
> other patches you submitted for the hv_netvsc is that you might just
> stub out the multicast, unicast, and vfta configuration calls for the
> hyperV interface since all that stuff should be handled by the other
> link in the bond anyway.  Then you should be able to mostly contain
> all the changes other than the device IDs to the vf.c file which is
> really how this kind of change should work anyway.

I will do that.
> 
> Also I was wondering.  Since HyperV is using a proprietary device ID
> anyway do you really need the calls like the one below?:
> +   if (x86_hyper == _hyper_ms_hyperv) {
> 
> If we can just identify HyperV via the device Id then we could drop
> the x86 arch specific bits and instead just build for all cases.
Yes; I was planning to get rid of the x86 dependency. I will fix this.

K. Y
> 
> - Alex


RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Alexander Duyck [mailto:alexander.du...@gmail.com]
> Sent: Thursday, April 14, 2016 5:19 PM
> To: KY Srinivasan 
> Cc: Rustad, Mark D ; David Miller
> ; netdev ; linux-
> ker...@vger.kernel.org; de...@linuxdriverproject.org; o...@aepfle.de;
> a...@canonical.com; jasow...@redhat.com; e...@mellanox.com;
> ja...@mellanox.com; yevge...@mellanox.com; Ronciak, John
> ; intel-wired-...@linuxonhyperv.com
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> On Thu, Apr 14, 2016 at 5:11 PM, KY Srinivasan  wrote:
> >
> >
> >> -Original Message-
> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> >> Sent: Thursday, April 14, 2016 5:07 PM
> >> To: KY Srinivasan 
> >> Cc: David Miller ; netdev
> >> ; linux-kernel@vger.kernel.org;
> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> >> yevge...@mellanox.com; Ronciak, John ;
> intel-
> >> wired-...@linuxonhyperv.com
> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> >> (Hyper-V)
> >>
> >> KY Srinivasan  wrote:
> >>
> >> >
> >> >
> >> >> -Original Message-
> >> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> >> >> Sent: Thursday, April 14, 2016 4:01 PM
> >> >> To: KY Srinivasan 
> >> >> Cc: David Miller ; netdev
> >> >> ; linux-kernel@vger.kernel.org;
> >> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> >> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> >> >> yevge...@mellanox.com; Ronciak, John ;
> >> intel-
> >> >> wired-...@linuxonhyperv.com
> >> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows
> hosts
> >> >> (Hyper-V)
> >> >>
> >> >> Some comments below:
> >> >
> >> > Mark,
> >> >
> >> > Thank you for the comments. I will address them and repost the
> patches.
> >> >
> >> > Regards,
> >> >
> >> > K. Y
> >>
> >> Please look closely at Alex's comments. I think they are much more
> >> important.
> >
> > I am looking at Alex's comments as I am writing this.
> >
> 
> On additional thought that just occurred to me after looking over the
> other patches you submitted for the hv_netvsc is that you might just
> stub out the multicast, unicast, and vfta configuration calls for the
> hyperV interface since all that stuff should be handled by the other
> link in the bond anyway.  Then you should be able to mostly contain
> all the changes other than the device IDs to the vf.c file which is
> really how this kind of change should work anyway.

I will do that.
> 
> Also I was wondering.  Since HyperV is using a proprietary device ID
> anyway do you really need the calls like the one below?:
> +   if (x86_hyper == _hyper_ms_hyperv) {
> 
> If we can just identify HyperV via the device Id then we could drop
> the x86 arch specific bits and instead just build for all cases.
Yes; I was planning to get rid of the x86 dependency. I will fix this.

K. Y
> 
> - Alex


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Rustad, Mark D

KY Srinivasan <k...@microsoft.com> wrote:





-Original Message-
From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
Sent: Thursday, April 14, 2016 5:07 PM
To: KY Srinivasan <k...@microsoft.com>
Cc: David Miller <da...@davemloft.net>; netdev
<net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>; intel-
wired-...@linuxonhyperv.com
Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
(Hyper-V)

KY Srinivasan <k...@microsoft.com> wrote:


-Original Message-
From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
Sent: Thursday, April 14, 2016 4:01 PM
To: KY Srinivasan <k...@microsoft.com>
Cc: David Miller <da...@davemloft.net>; netdev
<net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>;

intel-

wired-...@linuxonhyperv.com
Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
(Hyper-V)

Some comments below:


Mark,

Thank you for the comments. I will address them and repost the patches.

Regards,

K. Y


Please look closely at Alex's comments. I think they are much more
important.


I am looking at Alex's comments as I am writing this.

K. Y

--
Mark Rustad, Networking Division, Intel Corporation


Can you please stop putting that crazy intel-wired-...@linuxonhyperv.com in  
your messages? It doesn't exist.


--
Mark Rustad, Networking Division, Intel Corporation


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Alexander Duyck
On Thu, Apr 14, 2016 at 5:11 PM, KY Srinivasan <k...@microsoft.com> wrote:
>
>
>> -Original Message-
>> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
>> Sent: Thursday, April 14, 2016 5:07 PM
>> To: KY Srinivasan <k...@microsoft.com>
>> Cc: David Miller <da...@davemloft.net>; netdev
>> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
>> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
>> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
>> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>; intel-
>> wired-...@linuxonhyperv.com
>> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
>> (Hyper-V)
>>
>> KY Srinivasan <k...@microsoft.com> wrote:
>>
>> >
>> >
>> >> -Original Message-
>> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
>> >> Sent: Thursday, April 14, 2016 4:01 PM
>> >> To: KY Srinivasan <k...@microsoft.com>
>> >> Cc: David Miller <da...@davemloft.net>; netdev
>> >> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
>> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
>> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
>> >> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>;
>> intel-
>> >> wired-...@linuxonhyperv.com
>> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
>> >> (Hyper-V)
>> >>
>> >> Some comments below:
>> >
>> > Mark,
>> >
>> > Thank you for the comments. I will address them and repost the patches.
>> >
>> > Regards,
>> >
>> > K. Y
>>
>> Please look closely at Alex's comments. I think they are much more
>> important.
>
> I am looking at Alex's comments as I am writing this.
>

On additional thought that just occurred to me after looking over the
other patches you submitted for the hv_netvsc is that you might just
stub out the multicast, unicast, and vfta configuration calls for the
hyperV interface since all that stuff should be handled by the other
link in the bond anyway.  Then you should be able to mostly contain
all the changes other than the device IDs to the vf.c file which is
really how this kind of change should work anyway.

Also I was wondering.  Since HyperV is using a proprietary device ID
anyway do you really need the calls like the one below?:
+   if (x86_hyper == _hyper_ms_hyperv) {

If we can just identify HyperV via the device Id then we could drop
the x86 arch specific bits and instead just build for all cases.

- Alex


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Rustad, Mark D

KY Srinivasan  wrote:





-Original Message-
From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
Sent: Thursday, April 14, 2016 5:07 PM
To: KY Srinivasan 
Cc: David Miller ; netdev
; linux-kernel@vger.kernel.org;
de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
yevge...@mellanox.com; Ronciak, John ; intel-
wired-...@linuxonhyperv.com
Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
(Hyper-V)

KY Srinivasan  wrote:


-Original Message-
From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
Sent: Thursday, April 14, 2016 4:01 PM
To: KY Srinivasan 
Cc: David Miller ; netdev
; linux-kernel@vger.kernel.org;
de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
yevge...@mellanox.com; Ronciak, John ;

intel-

wired-...@linuxonhyperv.com
Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
(Hyper-V)

Some comments below:


Mark,

Thank you for the comments. I will address them and repost the patches.

Regards,

K. Y


Please look closely at Alex's comments. I think they are much more
important.


I am looking at Alex's comments as I am writing this.

K. Y

--
Mark Rustad, Networking Division, Intel Corporation


Can you please stop putting that crazy intel-wired-...@linuxonhyperv.com in  
your messages? It doesn't exist.


--
Mark Rustad, Networking Division, Intel Corporation


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Alexander Duyck
On Thu, Apr 14, 2016 at 5:11 PM, KY Srinivasan  wrote:
>
>
>> -Original Message-
>> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
>> Sent: Thursday, April 14, 2016 5:07 PM
>> To: KY Srinivasan 
>> Cc: David Miller ; netdev
>> ; linux-kernel@vger.kernel.org;
>> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
>> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
>> yevge...@mellanox.com; Ronciak, John ; intel-
>> wired-...@linuxonhyperv.com
>> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
>> (Hyper-V)
>>
>> KY Srinivasan  wrote:
>>
>> >
>> >
>> >> -Original Message-
>> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
>> >> Sent: Thursday, April 14, 2016 4:01 PM
>> >> To: KY Srinivasan 
>> >> Cc: David Miller ; netdev
>> >> ; linux-kernel@vger.kernel.org;
>> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
>> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
>> >> yevge...@mellanox.com; Ronciak, John ;
>> intel-
>> >> wired-...@linuxonhyperv.com
>> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
>> >> (Hyper-V)
>> >>
>> >> Some comments below:
>> >
>> > Mark,
>> >
>> > Thank you for the comments. I will address them and repost the patches.
>> >
>> > Regards,
>> >
>> > K. Y
>>
>> Please look closely at Alex's comments. I think they are much more
>> important.
>
> I am looking at Alex's comments as I am writing this.
>

On additional thought that just occurred to me after looking over the
other patches you submitted for the hv_netvsc is that you might just
stub out the multicast, unicast, and vfta configuration calls for the
hyperV interface since all that stuff should be handled by the other
link in the bond anyway.  Then you should be able to mostly contain
all the changes other than the device IDs to the vf.c file which is
really how this kind of change should work anyway.

Also I was wondering.  Since HyperV is using a proprietary device ID
anyway do you really need the calls like the one below?:
+   if (x86_hyper == _hyper_ms_hyperv) {

If we can just identify HyperV via the device Id then we could drop
the x86 arch specific bits and instead just build for all cases.

- Alex


RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> Sent: Thursday, April 14, 2016 5:07 PM
> To: KY Srinivasan <k...@microsoft.com>
> Cc: David Miller <da...@davemloft.net>; netdev
> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>; intel-
> wired-...@linuxonhyperv.com
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> KY Srinivasan <k...@microsoft.com> wrote:
> 
> >
> >
> >> -Original Message-
> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> >> Sent: Thursday, April 14, 2016 4:01 PM
> >> To: KY Srinivasan <k...@microsoft.com>
> >> Cc: David Miller <da...@davemloft.net>; netdev
> >> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> >> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>;
> intel-
> >> wired-...@linuxonhyperv.com
> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> >> (Hyper-V)
> >>
> >> Some comments below:
> >
> > Mark,
> >
> > Thank you for the comments. I will address them and repost the patches.
> >
> > Regards,
> >
> > K. Y
> 
> Please look closely at Alex's comments. I think they are much more
> important.

I am looking at Alex's comments as I am writing this.

K. Y
> 
> --
> Mark Rustad, Networking Division, Intel Corporation


RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> Sent: Thursday, April 14, 2016 5:07 PM
> To: KY Srinivasan 
> Cc: David Miller ; netdev
> ; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> yevge...@mellanox.com; Ronciak, John ; intel-
> wired-...@linuxonhyperv.com
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> KY Srinivasan  wrote:
> 
> >
> >
> >> -Original Message-
> >> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> >> Sent: Thursday, April 14, 2016 4:01 PM
> >> To: KY Srinivasan 
> >> Cc: David Miller ; netdev
> >> ; linux-kernel@vger.kernel.org;
> >> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> >> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> >> yevge...@mellanox.com; Ronciak, John ;
> intel-
> >> wired-...@linuxonhyperv.com
> >> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> >> (Hyper-V)
> >>
> >> Some comments below:
> >
> > Mark,
> >
> > Thank you for the comments. I will address them and repost the patches.
> >
> > Regards,
> >
> > K. Y
> 
> Please look closely at Alex's comments. I think they are much more
> important.

I am looking at Alex's comments as I am writing this.

K. Y
> 
> --
> Mark Rustad, Networking Division, Intel Corporation


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Rustad, Mark D

KY Srinivasan <k...@microsoft.com> wrote:





-Original Message-
From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
Sent: Thursday, April 14, 2016 4:01 PM
To: KY Srinivasan <k...@microsoft.com>
Cc: David Miller <da...@davemloft.net>; netdev
<net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>; intel-
wired-...@linuxonhyperv.com
Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
(Hyper-V)

Some comments below:


Mark,

Thank you for the comments. I will address them and repost the patches.

Regards,

K. Y


Please look closely at Alex's comments. I think they are much more important.

--
Mark Rustad, Networking Division, Intel Corporation


signature.asc
Description: Message signed with OpenPGP using GPGMail


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Rustad, Mark D

KY Srinivasan  wrote:





-Original Message-
From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
Sent: Thursday, April 14, 2016 4:01 PM
To: KY Srinivasan 
Cc: David Miller ; netdev
; linux-kernel@vger.kernel.org;
de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
yevge...@mellanox.com; Ronciak, John ; intel-
wired-...@linuxonhyperv.com
Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
(Hyper-V)

Some comments below:


Mark,

Thank you for the comments. I will address them and repost the patches.

Regards,

K. Y


Please look closely at Alex's comments. I think they are much more important.

--
Mark Rustad, Networking Division, Intel Corporation


signature.asc
Description: Message signed with OpenPGP using GPGMail


RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> Sent: Thursday, April 14, 2016 4:01 PM
> To: KY Srinivasan <k...@microsoft.com>
> Cc: David Miller <da...@davemloft.net>; netdev
> <net...@vger.kernel.org>; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> yevge...@mellanox.com; Ronciak, John <john.ronc...@intel.com>; intel-
> wired-...@linuxonhyperv.com
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> Some comments below:

Mark,

Thank you for the comments. I will address them and repost the patches.

Regards,

K. Y



RE: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread KY Srinivasan


> -Original Message-
> From: Rustad, Mark D [mailto:mark.d.rus...@intel.com]
> Sent: Thursday, April 14, 2016 4:01 PM
> To: KY Srinivasan 
> Cc: David Miller ; netdev
> ; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com;
> jasow...@redhat.com; e...@mellanox.com; ja...@mellanox.com;
> yevge...@mellanox.com; Ronciak, John ; intel-
> wired-...@linuxonhyperv.com
> Subject: Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts
> (Hyper-V)
> 
> Some comments below:

Mark,

Thank you for the comments. I will address them and repost the patches.

Regards,

K. Y



Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Alexander Duyck
On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan  wrote:
> On Hyper-V, the VF/PF communication is a via software mediated path
> as opposed to the hardware mailbox. Make the necessary
> adjustments to support Hyper-V.
>
> Signed-off-by: K. Y. Srinivasan 
> ---
>  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
>  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
>  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
>  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138 
> +
>  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
>  5 files changed, 201 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h 
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> index 5ac60ee..f8d2a0b 100644
> --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
>
>  enum ixgbevf_boards {
> board_82599_vf,
> +   board_82599_vf_hv,
> board_X540_vf,
> +   board_X540_vf_hv,
> board_X550_vf,
> +   board_X550_vf_hv,
> board_X550EM_x_vf,
> +   board_X550EM_x_vf_hv,
>  };
>
>  enum ixgbevf_xcast_modes {
> @@ -477,6 +481,13 @@ extern const struct ixgbevf_info ixgbevf_X550_vf_info;
>  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
>  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
>
> +
> +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> +
>  /* needed by ethtool.c */
>  extern const char ixgbevf_driver_name[];
>  extern const char ixgbevf_driver_version[];
> diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c 
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> index 007cbe0..4a0ffac 100644
> --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> @@ -49,6 +49,7 @@
>  #include 
>  #include 
>  #include 
> +#include 
>
>  #include "ixgbevf.h"
>
> @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
> "Copyright (c) 2009 - 2015 Intel Corporation.";
>
>  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
> -   [board_82599_vf] = _82599_vf_info,
> -   [board_X540_vf]  = _X540_vf_info,
> -   [board_X550_vf]  = _X550_vf_info,
> -   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> +   [board_82599_vf]= _82599_vf_info,
> +   [board_82599_vf_hv] = _82599_vf_hv_info,
> +   [board_X540_vf] = _X540_vf_info,
> +   [board_X540_vf_hv]  = _X540_vf_hv_info,
> +   [board_X550_vf] = _X550_vf_info,
> +   [board_X550_vf_hv]  = _X550_vf_hv_info,
> +   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> +   [board_X550EM_x_vf_hv]  = _X550EM_x_vf_hv_info,
>  };
>
>  /* ixgbevf_pci_tbl - PCI Device ID Table
> @@ -78,9 +83,13 @@ static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
>   */
>  static const struct pci_device_id ixgbevf_pci_tbl[] = {
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF), board_82599_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF_HV), board_82599_vf_hv },
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF), board_X540_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF_HV), board_X540_vf_hv },
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550_VF), board_X550_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550_VF_HV), board_X550_vf_hv },
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_VF), board_X550EM_x_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_VF_HV), 
> board_X550EM_x_vf_hv},
> /* required last entry */
> {0, }
>  };
> @@ -1809,12 +1818,13 @@ static int ixgbevf_vlan_rx_add_vid(struct net_device 
> *netdev,
>  {
> struct ixgbevf_adapter *adapter = netdev_priv(netdev);
> struct ixgbe_hw *hw = >hw;
> -   int err;
> +   int err = 0;
>
> spin_lock_bh(>mbx_lock);
>
> /* add VID to filter table */
> -   err = hw->mac.ops.set_vfta(hw, vid, 0, true);
> +   if (hw->mac.ops.set_vfta)
> +   err = hw->mac.ops.set_vfta(hw, vid, 0, true);
>
> spin_unlock_bh(>mbx_lock);
>
> @@ -1835,12 +1845,13 @@ static int ixgbevf_vlan_rx_kill_vid(struct net_device 
> *netdev,
>  {
> struct ixgbevf_adapter *adapter = netdev_priv(netdev);
> struct ixgbe_hw *hw = >hw;
> -   int err;
> +   int err = 0;
>
> spin_lock_bh(>mbx_lock);
>
> /* remove VID from filter table */
> -   err = hw->mac.ops.set_vfta(hw, vid, 0, false);
> +   if (hw->mac.ops.set_vfta)
> +   err = hw->mac.ops.set_vfta(hw, vid, 0, false);
>
> spin_unlock_bh(>mbx_lock);
>
> @@ -1873,14 

Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Alexander Duyck
On Thu, Apr 14, 2016 at 4:55 PM, K. Y. Srinivasan  wrote:
> On Hyper-V, the VF/PF communication is a via software mediated path
> as opposed to the hardware mailbox. Make the necessary
> adjustments to support Hyper-V.
>
> Signed-off-by: K. Y. Srinivasan 
> ---
>  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
>  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
>  drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
>  drivers/net/ethernet/intel/ixgbevf/vf.c   |  138 
> +
>  drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
>  5 files changed, 201 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h 
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> index 5ac60ee..f8d2a0b 100644
> --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
> @@ -460,9 +460,13 @@ enum ixbgevf_state_t {
>
>  enum ixgbevf_boards {
> board_82599_vf,
> +   board_82599_vf_hv,
> board_X540_vf,
> +   board_X540_vf_hv,
> board_X550_vf,
> +   board_X550_vf_hv,
> board_X550EM_x_vf,
> +   board_X550EM_x_vf_hv,
>  };
>
>  enum ixgbevf_xcast_modes {
> @@ -477,6 +481,13 @@ extern const struct ixgbevf_info ixgbevf_X550_vf_info;
>  extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_info;
>  extern const struct ixgbe_mbx_operations ixgbevf_mbx_ops;
>
> +
> +extern const struct ixgbevf_info ixgbevf_82599_vf_hv_info;
> +extern const struct ixgbevf_info ixgbevf_X540_vf_hv_info;
> +extern const struct ixgbevf_info ixgbevf_X550_vf_hv_info;
> +extern const struct ixgbevf_info ixgbevf_X550EM_x_vf_hv_info;
> +extern const struct ixgbe_mbx_operations ixgbevf_hv_mbx_ops;
> +
>  /* needed by ethtool.c */
>  extern const char ixgbevf_driver_name[];
>  extern const char ixgbevf_driver_version[];
> diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c 
> b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> index 007cbe0..4a0ffac 100644
> --- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> +++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
> @@ -49,6 +49,7 @@
>  #include 
>  #include 
>  #include 
> +#include 
>
>  #include "ixgbevf.h"
>
> @@ -62,10 +63,14 @@ static char ixgbevf_copyright[] =
> "Copyright (c) 2009 - 2015 Intel Corporation.";
>
>  static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
> -   [board_82599_vf] = _82599_vf_info,
> -   [board_X540_vf]  = _X540_vf_info,
> -   [board_X550_vf]  = _X550_vf_info,
> -   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> +   [board_82599_vf]= _82599_vf_info,
> +   [board_82599_vf_hv] = _82599_vf_hv_info,
> +   [board_X540_vf] = _X540_vf_info,
> +   [board_X540_vf_hv]  = _X540_vf_hv_info,
> +   [board_X550_vf] = _X550_vf_info,
> +   [board_X550_vf_hv]  = _X550_vf_hv_info,
> +   [board_X550EM_x_vf] = _X550EM_x_vf_info,
> +   [board_X550EM_x_vf_hv]  = _X550EM_x_vf_hv_info,
>  };
>
>  /* ixgbevf_pci_tbl - PCI Device ID Table
> @@ -78,9 +83,13 @@ static const struct ixgbevf_info *ixgbevf_info_tbl[] = {
>   */
>  static const struct pci_device_id ixgbevf_pci_tbl[] = {
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF), board_82599_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_82599_VF_HV), board_82599_vf_hv },
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF), board_X540_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X540_VF_HV), board_X540_vf_hv },
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550_VF), board_X550_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550_VF_HV), board_X550_vf_hv },
> {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_VF), board_X550EM_x_vf },
> +   {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_VF_HV), 
> board_X550EM_x_vf_hv},
> /* required last entry */
> {0, }
>  };
> @@ -1809,12 +1818,13 @@ static int ixgbevf_vlan_rx_add_vid(struct net_device 
> *netdev,
>  {
> struct ixgbevf_adapter *adapter = netdev_priv(netdev);
> struct ixgbe_hw *hw = >hw;
> -   int err;
> +   int err = 0;
>
> spin_lock_bh(>mbx_lock);
>
> /* add VID to filter table */
> -   err = hw->mac.ops.set_vfta(hw, vid, 0, true);
> +   if (hw->mac.ops.set_vfta)
> +   err = hw->mac.ops.set_vfta(hw, vid, 0, true);
>
> spin_unlock_bh(>mbx_lock);
>
> @@ -1835,12 +1845,13 @@ static int ixgbevf_vlan_rx_kill_vid(struct net_device 
> *netdev,
>  {
> struct ixgbevf_adapter *adapter = netdev_priv(netdev);
> struct ixgbe_hw *hw = >hw;
> -   int err;
> +   int err = 0;
>
> spin_lock_bh(>mbx_lock);
>
> /* remove VID from filter table */
> -   err = hw->mac.ops.set_vfta(hw, vid, 0, false);
> +   if (hw->mac.ops.set_vfta)
> +   err = hw->mac.ops.set_vfta(hw, vid, 0, false);
>
> spin_unlock_bh(>mbx_lock);
>
> @@ -1873,14 +1884,16 @@ static int 

Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Rustad, Mark D

Some comments below:

K. Y. Srinivasan  wrote:


On Hyper-V, the VF/PF communication is a via software mediated path
as opposed to the hardware mailbox. Make the necessary
adjustments to support Hyper-V.

Signed-off-by: K. Y. Srinivasan 
---
 drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
 drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
 drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
 drivers/net/ethernet/intel/ixgbevf/vf.c   |  138 +
 drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
 5 files changed, 201 insertions(+), 18 deletions(-)




diff --git a/drivers/net/ethernet/intel/ixgbevf/vf.c  
b/drivers/net/ethernet/intel/ixgbevf/vf.c

index 4d613a4..92397fd 100644
--- a/drivers/net/ethernet/intel/ixgbevf/vf.c
+++ b/drivers/net/ethernet/intel/ixgbevf/vf.c





@@ -126,6 +133,23 @@ static s32 ixgbevf_reset_hw_vf(struct ixgbe_hw *hw)
 }

 /**
+ * Hyper-V variant; the VF/PF communication is through the PCI
+ * config space.
+ */
+static s32 ixgbevf_hv_reset_hw_vf(struct ixgbe_hw *hw)
+{
+   int i;
+   struct ixgbevf_adapter *adapter = hw->back;


The two lines above should be swapped so that the longer one is first.


+
+   for (i = 0; i < 6; i++)
+   pci_read_config_byte(adapter->pdev,
+(i + IXGBE_HV_RESET_OFFSET),
+>mac.perm_addr[i]);
+
+   return 0;
+}
+
+/**
  *  ixgbevf_stop_hw_vf - Generic stop Tx/Rx units
  *  @hw: pointer to hardware structure
  *
@@ -656,6 +680,68 @@ out:
 }

 /**
+ * Hyper-V variant; there is no mailbox communication.
+ */
+static s32 ixgbevf_hv_check_mac_link_vf(struct ixgbe_hw *hw,
+   ixgbe_link_speed *speed,
+   bool *link_up,
+   bool autoneg_wait_to_complete)
+{
+   struct ixgbe_mbx_info *mbx = >mbx;
+   struct ixgbe_mac_info *mac = >mac;
+   s32 ret_val = 0;


ret_val here is redundant as this is the only assignment to it.
Please delete it and just return 0 at the end.


+   u32 links_reg;
+
+   /* If we were hit with a reset drop the link */
+   if (!mbx->ops.check_for_rst(hw) || !mbx->timeout)
+   mac->get_link_status = true;
+
+   if (!mac->get_link_status)
+   goto out;
+
+   /* if link status is down no point in checking to see if pf is up */
+   links_reg = IXGBE_READ_REG(hw, IXGBE_VFLINKS);
+   if (!(links_reg & IXGBE_LINKS_UP))
+   goto out;
+
+   /* for SFP+ modules and DA cables on 82599 it can take up to 500usecs
+* before the link status is correct
+*/
+   if (mac->type == ixgbe_mac_82599_vf) {
+   int i;
+
+   for (i = 0; i < 5; i++) {
+   udelay(100);
+   links_reg = IXGBE_READ_REG(hw, IXGBE_VFLINKS);
+
+   if (!(links_reg & IXGBE_LINKS_UP))
+   goto out;
+   }
+   }
+
+   switch (links_reg & IXGBE_LINKS_SPEED_82599) {
+   case IXGBE_LINKS_SPEED_10G_82599:
+   *speed = IXGBE_LINK_SPEED_10GB_FULL;
+   break;
+   case IXGBE_LINKS_SPEED_1G_82599:
+   *speed = IXGBE_LINK_SPEED_1GB_FULL;
+   break;
+   case IXGBE_LINKS_SPEED_100_82599:
+   *speed = IXGBE_LINK_SPEED_100_FULL;
+   break;
+   }
+
+   /* if we passed all the tests above then the link is up and we no
+* longer need to check for link
+*/
+   mac->get_link_status = false;
+
+out:
+   *link_up = !mac->get_link_status;
+   return ret_val;


Just return 0 above.


+}
+
+/**
  *  ixgbevf_rlpml_set_vf - Set the maximum receive packet length
  *  @hw: pointer to the HW structure
  *  @max_size: value to assign to max frame size





@@ -663,6 +749,19 @@ out:
 void ixgbevf_rlpml_set_vf(struct ixgbe_hw *hw, u16 max_size)
 {
u32 msgbuf[2];
+   u32 reg;
+
+   if (x86_hyper == _hyper_ms_hyperv) {
+   /*
+* If we are on Hyper-V, we implement


Please format the comment above netdev-style, /* If we are...
as you did elsewhere.


+* this functionality differently.
+*/
+   reg =  IXGBE_READ_REG(hw, IXGBE_VFRXDCTL(0));
+   /* CRC == 4 */
+   reg |= ((max_size + 4) | IXGBE_RXDCTL_RLPML_EN);
+   IXGBE_WRITE_REG(hw, IXGBE_VFRXDCTL(0), reg);
+   return;
+   }

msgbuf[0] = IXGBE_VF_SET_LPE;
msgbuf[1] = max_size;
@@ -679,6 +778,16 @@ int ixgbevf_negotiate_api_version(struct ixgbe_hw  
*hw, int api)

int err;
u32 msg[3];

+   if (x86_hyper == _hyper_ms_hyperv) {
+   /*
+* Hyper-V only supports api version ixgbe_mbox_api_10


Again, please use netdev-style 

Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread Rustad, Mark D

Some comments below:

K. Y. Srinivasan  wrote:


On Hyper-V, the VF/PF communication is a via software mediated path
as opposed to the hardware mailbox. Make the necessary
adjustments to support Hyper-V.

Signed-off-by: K. Y. Srinivasan 
---
 drivers/net/ethernet/intel/ixgbevf/ixgbevf.h  |   11 ++
 drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c |   56 ++---
 drivers/net/ethernet/intel/ixgbevf/mbx.c  |   12 ++
 drivers/net/ethernet/intel/ixgbevf/vf.c   |  138 +
 drivers/net/ethernet/intel/ixgbevf/vf.h   |2 +
 5 files changed, 201 insertions(+), 18 deletions(-)




diff --git a/drivers/net/ethernet/intel/ixgbevf/vf.c  
b/drivers/net/ethernet/intel/ixgbevf/vf.c

index 4d613a4..92397fd 100644
--- a/drivers/net/ethernet/intel/ixgbevf/vf.c
+++ b/drivers/net/ethernet/intel/ixgbevf/vf.c





@@ -126,6 +133,23 @@ static s32 ixgbevf_reset_hw_vf(struct ixgbe_hw *hw)
 }

 /**
+ * Hyper-V variant; the VF/PF communication is through the PCI
+ * config space.
+ */
+static s32 ixgbevf_hv_reset_hw_vf(struct ixgbe_hw *hw)
+{
+   int i;
+   struct ixgbevf_adapter *adapter = hw->back;


The two lines above should be swapped so that the longer one is first.


+
+   for (i = 0; i < 6; i++)
+   pci_read_config_byte(adapter->pdev,
+(i + IXGBE_HV_RESET_OFFSET),
+>mac.perm_addr[i]);
+
+   return 0;
+}
+
+/**
  *  ixgbevf_stop_hw_vf - Generic stop Tx/Rx units
  *  @hw: pointer to hardware structure
  *
@@ -656,6 +680,68 @@ out:
 }

 /**
+ * Hyper-V variant; there is no mailbox communication.
+ */
+static s32 ixgbevf_hv_check_mac_link_vf(struct ixgbe_hw *hw,
+   ixgbe_link_speed *speed,
+   bool *link_up,
+   bool autoneg_wait_to_complete)
+{
+   struct ixgbe_mbx_info *mbx = >mbx;
+   struct ixgbe_mac_info *mac = >mac;
+   s32 ret_val = 0;


ret_val here is redundant as this is the only assignment to it.
Please delete it and just return 0 at the end.


+   u32 links_reg;
+
+   /* If we were hit with a reset drop the link */
+   if (!mbx->ops.check_for_rst(hw) || !mbx->timeout)
+   mac->get_link_status = true;
+
+   if (!mac->get_link_status)
+   goto out;
+
+   /* if link status is down no point in checking to see if pf is up */
+   links_reg = IXGBE_READ_REG(hw, IXGBE_VFLINKS);
+   if (!(links_reg & IXGBE_LINKS_UP))
+   goto out;
+
+   /* for SFP+ modules and DA cables on 82599 it can take up to 500usecs
+* before the link status is correct
+*/
+   if (mac->type == ixgbe_mac_82599_vf) {
+   int i;
+
+   for (i = 0; i < 5; i++) {
+   udelay(100);
+   links_reg = IXGBE_READ_REG(hw, IXGBE_VFLINKS);
+
+   if (!(links_reg & IXGBE_LINKS_UP))
+   goto out;
+   }
+   }
+
+   switch (links_reg & IXGBE_LINKS_SPEED_82599) {
+   case IXGBE_LINKS_SPEED_10G_82599:
+   *speed = IXGBE_LINK_SPEED_10GB_FULL;
+   break;
+   case IXGBE_LINKS_SPEED_1G_82599:
+   *speed = IXGBE_LINK_SPEED_1GB_FULL;
+   break;
+   case IXGBE_LINKS_SPEED_100_82599:
+   *speed = IXGBE_LINK_SPEED_100_FULL;
+   break;
+   }
+
+   /* if we passed all the tests above then the link is up and we no
+* longer need to check for link
+*/
+   mac->get_link_status = false;
+
+out:
+   *link_up = !mac->get_link_status;
+   return ret_val;


Just return 0 above.


+}
+
+/**
  *  ixgbevf_rlpml_set_vf - Set the maximum receive packet length
  *  @hw: pointer to the HW structure
  *  @max_size: value to assign to max frame size





@@ -663,6 +749,19 @@ out:
 void ixgbevf_rlpml_set_vf(struct ixgbe_hw *hw, u16 max_size)
 {
u32 msgbuf[2];
+   u32 reg;
+
+   if (x86_hyper == _hyper_ms_hyperv) {
+   /*
+* If we are on Hyper-V, we implement


Please format the comment above netdev-style, /* If we are...
as you did elsewhere.


+* this functionality differently.
+*/
+   reg =  IXGBE_READ_REG(hw, IXGBE_VFRXDCTL(0));
+   /* CRC == 4 */
+   reg |= ((max_size + 4) | IXGBE_RXDCTL_RLPML_EN);
+   IXGBE_WRITE_REG(hw, IXGBE_VFRXDCTL(0), reg);
+   return;
+   }

msgbuf[0] = IXGBE_VF_SET_LPE;
msgbuf[1] = max_size;
@@ -679,6 +778,16 @@ int ixgbevf_negotiate_api_version(struct ixgbe_hw  
*hw, int api)

int err;
u32 msg[3];

+   if (x86_hyper == _hyper_ms_hyperv) {
+   /*
+* Hyper-V only supports api version ixgbe_mbox_api_10


Again, please use netdev-style comment above.


+*/
+ 

Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread kbuild test robot
Hi Srinivasan,

[auto build test ERROR on net-next/master]

url:
https://github.com/0day-ci/linux/commits/K-Y-Srinivasan/ethernet-intel-Add-the-device-ID-s-presented-while-running-on-Hyper-V/20160415-061821
config: sparc64-allyesconfig (attached as .config)
reproduce:
wget 
https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross
 -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=sparc64 

All errors (new ones prefixed by >>):

   drivers/net/ethernet/intel/ixgbevf/vf.c: In function 'ixgbevf_rlpml_set_vf':
>> drivers/net/ethernet/intel/ixgbevf/vf.c:754:6: error: 'x86_hyper' undeclared 
>> (first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
 ^
   drivers/net/ethernet/intel/ixgbevf/vf.c:754:6: note: each undeclared 
identifier is reported only once for each function it appears in
>> drivers/net/ethernet/intel/ixgbevf/vf.c:754:20: error: 'x86_hyper_ms_hyperv' 
>> undeclared (first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
   ^
   drivers/net/ethernet/intel/ixgbevf/vf.c: In function 
'ixgbevf_negotiate_api_version':
   drivers/net/ethernet/intel/ixgbevf/vf.c:781:6: error: 'x86_hyper' undeclared 
(first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
 ^
   drivers/net/ethernet/intel/ixgbevf/vf.c:781:20: error: 'x86_hyper_ms_hyperv' 
undeclared (first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
   ^

vim +/x86_hyper +754 drivers/net/ethernet/intel/ixgbevf/vf.c

   748   **/
   749  void ixgbevf_rlpml_set_vf(struct ixgbe_hw *hw, u16 max_size)
   750  {
   751  u32 msgbuf[2];
   752  u32 reg;
   753  
 > 754  if (x86_hyper == _hyper_ms_hyperv) {
   755  /*
   756   * If we are on Hyper-V, we implement
   757   * this functionality differently.

---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all   Intel Corporation


.config.gz
Description: Binary data


Re: [PATCH net-next 2/2] intel: ixgbevf: Support Windows hosts (Hyper-V)

2016-04-14 Thread kbuild test robot
Hi Srinivasan,

[auto build test ERROR on net-next/master]

url:
https://github.com/0day-ci/linux/commits/K-Y-Srinivasan/ethernet-intel-Add-the-device-ID-s-presented-while-running-on-Hyper-V/20160415-061821
config: sparc64-allyesconfig (attached as .config)
reproduce:
wget 
https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross
 -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=sparc64 

All errors (new ones prefixed by >>):

   drivers/net/ethernet/intel/ixgbevf/vf.c: In function 'ixgbevf_rlpml_set_vf':
>> drivers/net/ethernet/intel/ixgbevf/vf.c:754:6: error: 'x86_hyper' undeclared 
>> (first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
 ^
   drivers/net/ethernet/intel/ixgbevf/vf.c:754:6: note: each undeclared 
identifier is reported only once for each function it appears in
>> drivers/net/ethernet/intel/ixgbevf/vf.c:754:20: error: 'x86_hyper_ms_hyperv' 
>> undeclared (first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
   ^
   drivers/net/ethernet/intel/ixgbevf/vf.c: In function 
'ixgbevf_negotiate_api_version':
   drivers/net/ethernet/intel/ixgbevf/vf.c:781:6: error: 'x86_hyper' undeclared 
(first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
 ^
   drivers/net/ethernet/intel/ixgbevf/vf.c:781:20: error: 'x86_hyper_ms_hyperv' 
undeclared (first use in this function)
 if (x86_hyper == _hyper_ms_hyperv) {
   ^

vim +/x86_hyper +754 drivers/net/ethernet/intel/ixgbevf/vf.c

   748   **/
   749  void ixgbevf_rlpml_set_vf(struct ixgbe_hw *hw, u16 max_size)
   750  {
   751  u32 msgbuf[2];
   752  u32 reg;
   753  
 > 754  if (x86_hyper == _hyper_ms_hyperv) {
   755  /*
   756   * If we are on Hyper-V, we implement
   757   * this functionality differently.

---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all   Intel Corporation


.config.gz
Description: Binary data