From: Yuval Shaia <yuval.shaia@oracle.com>
To: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Cc: dmitry.fleytman@gmail.com, jasowang@redhat.com,
eblake@redhat.com, armbru@redhat.com, pbonzini@redhat.com,
qemu-devel@nongnu.org, shamir.rabinovitch@oracle.com,
yuval.shaia@oracle.com
Subject: Re: [Qemu-devel] [PATCH v2 13/22] hw/pvrdma: Make sure PCI function 0 is vmxnet3
Date: Sun, 18 Nov 2018 11:16:30 +0200 [thread overview]
Message-ID: <20181118091629.GD3638@lap1> (raw)
In-Reply-To: <70f15298-24c2-d899-82fc-5d07e483474d@gmail.com>
On Sat, Nov 17, 2018 at 01:41:41PM +0200, Marcel Apfelbaum wrote:
>
>
> On 11/11/18 9:45 AM, Yuval Shaia wrote:
> > On Sat, Nov 10, 2018 at 08:27:44PM +0200, Marcel Apfelbaum wrote:
> > >
> > > On 11/8/18 6:08 PM, Yuval Shaia wrote:
> > > > Guest driver enforces it, we should also.
> > > >
> > > > Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
> > > > ---
> > > > hw/rdma/vmw/pvrdma.h | 2 ++
> > > > hw/rdma/vmw/pvrdma_main.c | 3 +++
> > > > 2 files changed, 5 insertions(+)
> > > >
> > > > diff --git a/hw/rdma/vmw/pvrdma.h b/hw/rdma/vmw/pvrdma.h
> > > > index b019cb843a..10a3c4fb7c 100644
> > > > --- a/hw/rdma/vmw/pvrdma.h
> > > > +++ b/hw/rdma/vmw/pvrdma.h
> > > > @@ -20,6 +20,7 @@
> > > > #include "hw/pci/pci.h"
> > > > #include "hw/pci/msix.h"
> > > > #include "chardev/char-fe.h"
> > > > +#include "hw/net/vmxnet3_defs.h"
> > > > #include "../rdma_backend_defs.h"
> > > > #include "../rdma_rm_defs.h"
> > > > @@ -85,6 +86,7 @@ typedef struct PVRDMADev {
> > > > RdmaBackendDev backend_dev;
> > > > RdmaDeviceResources rdma_dev_res;
> > > > CharBackend mad_chr;
> > > > + VMXNET3State *func0;
> > > > } PVRDMADev;
> > > > #define PVRDMA_DEV(dev) OBJECT_CHECK(PVRDMADev, (dev), PVRDMA_HW_NAME)
> > > > diff --git a/hw/rdma/vmw/pvrdma_main.c b/hw/rdma/vmw/pvrdma_main.c
> > > > index ac8c092db0..fa6468d221 100644
> > > > --- a/hw/rdma/vmw/pvrdma_main.c
> > > > +++ b/hw/rdma/vmw/pvrdma_main.c
> > > > @@ -576,6 +576,9 @@ static void pvrdma_realize(PCIDevice *pdev, Error **errp)
> > > > return;
> > > > }
> > > > + /* Break if not vmxnet3 device in slot 0 */
> > > > + dev->func0 = VMXNET3(pci_get_function_0(pdev));
> > > > +
> > > I don't see the error code flow in case VMXNET3 is not func 0.
> > > Am I missing something?
> > Yes, this is a dynamic cast that will break the process when fail to cast.
> >
> > This is the error message that you will get in case that device on function
> > 0 is not vmxnet3:
> >
> > pvrdma_main.c:589:pvrdma_realize: Object 0x557b959841a0 is not an instance of type vmxnet3
>
> I am not sure we will see this error if QEMU is compiled in Release mode.
> I think object_dynamic_cast_assert throws this error only if
> CONFIG_QOM_CAST_DEBUG
> is set, and is possible the mentioned flag is not set in Release.
>
> Thanks,
> Marcel
Done.
Thanks.
>
> >
> > >
> > > Thanks,
> > > Marcel
> > >
> > > > memdev_root = object_resolve_path("/objects", NULL);
> > > > if (memdev_root) {
> > > > object_child_foreach(memdev_root, pvrdma_check_ram_shared, &ram_shared);
>
next prev parent reply other threads:[~2018-11-18 9:16 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-08 16:07 [Qemu-devel] [PATCH v2 00/22] Add support for RDMA MAD Yuval Shaia
2018-11-08 16:07 ` [Qemu-devel] [PATCH v2 01/22] contrib/rdmacm-mux: Add implementation of RDMA User MAD multiplexer Yuval Shaia
2018-11-10 20:10 ` Shamir Rabinovitch
2018-11-11 7:38 ` Yuval Shaia
2018-11-08 16:07 ` [Qemu-devel] [PATCH v2 02/22] hw/rdma: Add ability to force notification without re-arm Yuval Shaia
2018-11-10 17:56 ` Marcel Apfelbaum
2018-11-08 16:07 ` [Qemu-devel] [PATCH v2 03/22] hw/rdma: Return qpn 1 if ibqp is NULL Yuval Shaia
2018-11-10 17:59 ` Marcel Apfelbaum
2018-11-11 9:12 ` Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 04/22] hw/rdma: Abort send-op if fail to create addr handler Yuval Shaia
2018-11-10 17:59 ` Marcel Apfelbaum
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 05/22] hw/rdma: Add support for MAD packets Yuval Shaia
2018-11-10 18:15 ` Marcel Apfelbaum
2018-11-11 10:31 ` Yuval Shaia
2018-11-17 11:35 ` Marcel Apfelbaum
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 06/22] hw/pvrdma: Make function reset_device return void Yuval Shaia
2018-11-10 18:17 ` Marcel Apfelbaum
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 07/22] hw/pvrdma: Make default pkey 0xFFFF Yuval Shaia
2018-11-10 18:17 ` Marcel Apfelbaum
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 08/22] hw/pvrdma: Set the correct opcode for recv completion Yuval Shaia
2018-11-10 18:18 ` Marcel Apfelbaum
2018-11-11 8:43 ` Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 09/22] hw/pvrdma: Set the correct opcode for send completion Yuval Shaia
2018-11-10 18:21 ` Marcel Apfelbaum
2018-11-11 8:04 ` Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 10/22] json: Define new QMP message for pvrdma Yuval Shaia
2018-11-10 18:25 ` Marcel Apfelbaum
2018-11-11 7:50 ` Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 11/22] hw/pvrdma: Add support to allow guest to configure GID table Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 12/22] vmxnet3: Move some definitions to header file Yuval Shaia
2018-11-12 13:56 ` Dmitry Fleytman
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 13/22] hw/pvrdma: Make sure PCI function 0 is vmxnet3 Yuval Shaia
2018-11-10 18:27 ` Marcel Apfelbaum
2018-11-11 7:45 ` Yuval Shaia
2018-11-17 11:41 ` Marcel Apfelbaum
2018-11-18 9:16 ` Yuval Shaia [this message]
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 14/22] hw/rdma: Initialize node_guid from vmxnet3 mac address Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 15/22] hw/pvrdma: Make device state depend on Ethernet function state Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 16/22] hw/pvrdma: Fill all CQE fields Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 17/22] hw/pvrdma: Fill error code in command's response Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 18/22] hw/rdma: Remove unneeded code that handles more that one port Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 19/22] vl: Introduce shutdown_notifiers Yuval Shaia
2018-11-08 16:26 ` Cornelia Huck
2018-11-08 20:45 ` Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 20/22] hw/pvrdma: Clean device's resource when system is shutdown Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 21/22] rdma: Do not use bitmap_zero_extend to fee bitmap Yuval Shaia
2018-11-08 16:08 ` [Qemu-devel] [PATCH v2 22/22] rdma: Do not call rdma_backend_del_gid on an empty gid Yuval Shaia
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181118091629.GD3638@lap1 \
--to=yuval.shaia@oracle.com \
--cc=armbru@redhat.com \
--cc=dmitry.fleytman@gmail.com \
--cc=eblake@redhat.com \
--cc=jasowang@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=shamir.rabinovitch@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.