mbox series

[net-next,v2,0/3] GVE Raw Addressing

Message ID 20200922155100.1624976-1-awogbemila@google.com
Headers show
Series GVE Raw Addressing | expand

Message

David Awogbemila Sept. 22, 2020, 3:50 p.m. UTC
Changes from v1:

Patch 1: Remove incorrect indentation change in gve_adminq_describe_device.

Catherine Sullivan (3):
  gve: Add support for raw addressing device option
  gve: Add support for raw addressing to the rx path
  gve: Add support for raw addressing in the tx path

 drivers/net/ethernet/google/gve/gve.h        |  40 ++-
 drivers/net/ethernet/google/gve/gve_adminq.c |  65 +++-
 drivers/net/ethernet/google/gve/gve_adminq.h |  15 +-
 drivers/net/ethernet/google/gve/gve_desc.h   |  18 +-
 drivers/net/ethernet/google/gve/gve_main.c   |  12 +-
 drivers/net/ethernet/google/gve/gve_rx.c     | 342 ++++++++++++++-----
 drivers/net/ethernet/google/gve/gve_tx.c     | 207 +++++++++--
 7 files changed, 552 insertions(+), 147 deletions(-)

Comments

Jakub Kicinski Sept. 22, 2020, 5:32 p.m. UTC | #1
On Tue, 22 Sep 2020 08:50:58 -0700 David Awogbemila wrote:
> +	dev_opt = (struct gve_device_option *)((void *)descriptor +
> +							sizeof(*descriptor));

You don't need to cast void pointers to types.

The idiomatic way to get end of structure in C is: &descriptor[1] or
descriptor + 1.
Jakub Kicinski Sept. 22, 2020, 5:40 p.m. UTC | #2
On Tue, 22 Sep 2020 08:51:00 -0700 David Awogbemila wrote:
> -static void gve_dma_sync_for_device(struct device *dev, dma_addr_t *page_buses,
> -				    u64 iov_offset, u64 iov_len)
> +static void gve_dma_sync_for_device(struct gve_priv *priv,
> +				    dma_addr_t *page_buses,
> +								u64 iov_offset, u64 iov_len)

Alignment stilled messed up here.
David Awogbemila Sept. 23, 2020, 4:26 p.m. UTC | #3
On Tue, Sep 22, 2020 at 10:32 AM Jakub Kicinski <kuba@kernel.org> wrote:
>

> On Tue, 22 Sep 2020 08:50:58 -0700 David Awogbemila wrote:

> > +     dev_opt = (struct gve_device_option *)((void *)descriptor +

> > +                                                     sizeof(*descriptor));

>

> You don't need to cast void pointers to types.

>

> The idiomatic way to get end of structure in C is: &descriptor[1] or

> descriptor + 1.


Ok, I'll adjust this, thanks.
David Awogbemila Sept. 23, 2020, 4:28 p.m. UTC | #4
On Tue, Sep 22, 2020 at 10:40 AM Jakub Kicinski <kuba@kernel.org> wrote:
>

> On Tue, 22 Sep 2020 08:51:00 -0700 David Awogbemila wrote:

> > -static void gve_dma_sync_for_device(struct device *dev, dma_addr_t *page_buses,

> > -                                 u64 iov_offset, u64 iov_len)

> > +static void gve_dma_sync_for_device(struct gve_priv *priv,

> > +                                 dma_addr_t *page_buses,

> > +                                                             u64 iov_offset, u64 iov_len)

>

> Alignment stilled messed up here.


Thanks, I'll fix this.