As noted from spec: "Some commands require an additional dma memory
region to be passed to the device"
We are passing virtual addresses to devices (please look at link-speed
and describe-device adminq commands):
describe device:
https://github.com/DPDK/dpdk/blob/main/drivers/net/gve/base/gve_adminq.c#L704
link-speed: 
https://github.com/DPDK/dpdk/blob/main/drivers/net/gve/base/gve_adminq.c#L869

These adminq commands rely on gve_dma_alloc which presents mz->addr
and not iova as memory region:
https://github.com/DPDK/dpdk/blob/main/drivers/net/gve/base/gve_osdep.h#L139

Here is the new patch:
http://patchwork.dpdk.org/project/dpdk/patch/20230524171324.2072742-1-rush...@google.com/



On Tue, May 23, 2023 at 3:22 AM Ferruh Yigit <ferruh.yi...@amd.com> wrote:
>
> On 5/19/2023 9:46 PM, Rushil Gupta wrote:
> > diff --git a/drivers/net/gve/base/gve_osdep.h 
> > b/drivers/net/gve/base/gve_osdep.h
> > index abf3d379ae..5e8ae1eac6 100644
> > --- a/drivers/net/gve/base/gve_osdep.h
> > +++ b/drivers/net/gve/base/gve_osdep.h
> > @@ -21,9 +21,14 @@
> >  #include <rte_malloc.h>
> >  #include <rte_memcpy.h>
> >  #include <rte_memzone.h>
> > +#include <rte_version.h>
> >
> >  #include "../gve_logs.h"
> >
> > +#ifdef __linux__
> > +#include <sys/utsname.h>
> > +#endif
> > +
>
> Can you please use 'RTE_EXEC_ENV_LINUX' macro instead of '__linux__'?

Reply via email to