From: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>,
kvm@vger.kernel.org, linux-s390@vger.kernel.org,
qemu-devel@nongnu.org, renxiaof@linux.vnet.ibm.com,
cornelia.huck@de.ibm.com, borntraeger@de.ibm.com, agraf@suse.com
Subject: Re: [Qemu-devel] [PATCH v5 06/13] s390x/css: device support for s390-ccw passthrough
Date: Tue, 25 Apr 2017 11:32:14 +0800 [thread overview]
Message-ID: <20170425033214.GF31848@bjsdjshi@linux.vnet.ibm.com> (raw)
In-Reply-To: <20170424201618.0d3ffd81@w520.home>
* Alex Williamson <alex.williamson@redhat.com> [2017-04-24 20:16:18 -0600]:
> On Tue, 25 Apr 2017 10:10:22 +0800
> Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com> wrote:
>
> > * Alex Williamson <alex.williamson@redhat.com> [2017-04-24 16:52:58 -0600]:
> >
> > > On Wed, 12 Apr 2017 07:21:08 +0200
> > > Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com> wrote:
> > >
> > > > In order to support subchannels pass-through, we introduce a s390
> > > > subchannel device called "s390-ccw" to hold the real subchannel info.
> > > > The s390-ccw devices inherit from the abstract CcwDevice which connect
> > > > to the existing virtual-css-bus.
> > > >
> > > > Signed-off-by: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
> > > > ---
> > > > hw/s390x/Makefile.objs | 1 +
> > > > hw/s390x/s390-ccw.c | 134 +++++++++++++++++++++++++++++++++++++++++++++++++
> > > > hw/s390x/s390-ccw.h | 38 ++++++++++++++
> > > > 3 files changed, 173 insertions(+)
> > > > create mode 100644 hw/s390x/s390-ccw.c
> > > > create mode 100644 hw/s390x/s390-ccw.h
> > > >
> > > > diff --git a/hw/s390x/Makefile.objs b/hw/s390x/Makefile.objs
> > > > index 41ac4ec..72a3d37 100644
> > > > --- a/hw/s390x/Makefile.objs
> > > > +++ b/hw/s390x/Makefile.objs
> > > > @@ -13,3 +13,4 @@ obj-y += ccw-device.o
> > > > obj-y += s390-pci-bus.o s390-pci-inst.o
> > > > obj-y += s390-skeys.o
> > > > obj-$(CONFIG_KVM) += s390-skeys-kvm.o
> > > > +obj-y += s390-ccw.o
> > > > diff --git a/hw/s390x/s390-ccw.c b/hw/s390x/s390-ccw.c
> > > > new file mode 100644
> > > > index 0000000..f3d5ed1
> > > > --- /dev/null
> > > > +++ b/hw/s390x/s390-ccw.c
> > > > @@ -0,0 +1,134 @@
> > > > +/*
> > > > + * s390 CCW Assignment Support
> > > > + *
> > > > + * Copyright 2017 IBM Corp
> > > > + * Author(s): Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
> > > > + * Xiao Feng Ren <renxiaof@linux.vnet.ibm.com>
> > > > + * Pierre Morel <pmorel@linux.vnet.ibm.com>
> > > > + *
> > > > + * This work is licensed under the terms of the GNU GPL, version 2
> > > > + * or (at your option) any later version. See the COPYING file in the
> > > > + * top-level directory.
> > > > + */
> > > > +#include "qemu/osdep.h"
> > > > +#include "qapi/error.h"
> > > > +#include "hw/sysbus.h"
> > > > +#include "libgen.h"
> > > > +#include "hw/s390x/css.h"
> > > > +#include "hw/s390x/css-bridge.h"
> > > > +#include "s390-ccw.h"
> > > > +
> > > > +static void s390_ccw_get_dev_info(S390CCWDevice *cdev,
> > > > + char *sysfsdev,
> > > > + Error **errp)
> > > > +{
> > > > + char dev_path[PATH_MAX], *tmp;
> > > > + unsigned int cssid, ssid, devid;
> > > > +
> > > > + if (!sysfsdev) {
> > > > + error_setg(errp, "No host device provided");
> > > > + error_append_hint(errp, "Use -vfio-ccw,sysfsdev=PATH_TO_DEVICE\n");
> > >
> > > nit, the leading '-' here seems strange, either you're describing
> > > '-device vfio-ccw,...', or only the 'vfio-ccw,...' part. Maybe I
> > > notice this because sometimes I do accidentally type -vfio-pci instead
> > > of -device vfio-pci. Thanks,
> > >
> > > Alex
> > >
> > Ok. I will change it to:
> > error_append_hint(errp,
> > "Use -device vfio-ccw,sysfsdev=PATH_TO_DEVICE\n");
> >
> > BTW, I learned this from the pci code.
> > hw/vfio/pci.c:2628:
> > error_append_hint(errp, "Use -vfio-pci,host=DDDD:BB:DD.F "
> > "or -vfio-pci,sysfsdev=PATH_TO_DEVICE\n")
> > Welcome a fix to that too?
>
> Aha, maybe that's where I learned my bad habit. Yes, please send a
> patch separate from this series. Thanks,
>
> Alex
>
Will do soon. ;>
> > > > + return;
> > > > + }
> > > > +
> > > > + if (!realpath(sysfsdev, dev_path)) {
> > > > + error_setg(errp, "Host device '%s' not found", sysfsdev);
> > > > + return;
> > > > + }
> > > > +
> > > > + cdev->mdevid = g_strdup(basename(dev_path));
> > > > +
> > > > + tmp = basename(dirname(dev_path));
> > > > + sscanf(tmp, "%2x.%1x.%4x", &cssid, &ssid, &devid);
> > > > +
> > > > + cdev->hostid.cssid = cssid;
> > > > + cdev->hostid.ssid = ssid;
> > > > + cdev->hostid.devid = devid;
> > > > + cdev->hostid.valid = true;
> > > > +}
> > > > +
> > [...]
> >
>
--
Dong Jia Shi
next prev parent reply other threads:[~2017-04-25 3:32 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-12 5:21 [PATCH v5 00/13] basic channel IO passthrough infrastructure based on vfio Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 01/13] update-linux-headers: update for vfio-ccw Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 02/13] vfio: linux-headers " Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 03/13] s390x/css: add s390-squash-mcss machine option Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 04/13] s390x/css: realize css_sch_build_schib Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 05/13] s390x/css: realize css_create_sch Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 06/13] s390x/css: device support for s390-ccw passthrough Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-24 22:52 ` Alex Williamson
2017-04-24 22:52 ` [Qemu-devel] " Alex Williamson
[not found] ` <20170425021022.GE31848@bjsdjshi@linux.vnet.ibm.com>
[not found] ` <20170424201618.0d3ffd81@w520.home>
2017-04-25 3:32 ` Dong Jia Shi [this message]
2017-04-12 5:21 ` [PATCH v5 07/13] vfio/ccw: vfio based subchannel passthrough driver Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-24 22:43 ` Alex Williamson
2017-04-24 22:43 ` [Qemu-devel] " Alex Williamson
2017-04-24 22:56 ` Alex Williamson
2017-04-24 22:56 ` [Qemu-devel] " Alex Williamson
2017-04-25 5:15 ` Dong Jia Shi
2017-04-26 8:49 ` Dong Jia Shi
2017-04-28 11:04 ` Cornelia Huck
2017-04-28 11:04 ` [Qemu-devel] " Cornelia Huck
2017-04-28 13:12 ` Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 08/13] vfio/ccw: get io region info Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 09/13] vfio/ccw: get irqs info and set the eventfd fd Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 10/13] s390x/css: introduce and realize ccw-request callback Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 11/13] s390x/css: ccw translation infrastructure Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 12/13] vfio/ccw: update sense data if a unit check is pending Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
2017-04-12 5:21 ` [PATCH v5 13/13] MAINTAINERS: Add vfio-ccw maintainer Dong Jia Shi
2017-04-12 5:21 ` [Qemu-devel] " Dong Jia Shi
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=20170425033214.GF31848@bjsdjshi@linux.vnet.ibm.com \
--to=bjsdjshi@linux.vnet.ibm.com \
--cc=agraf@suse.com \
--cc=alex.williamson@redhat.com \
--cc=borntraeger@de.ibm.com \
--cc=cornelia.huck@de.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
--cc=renxiaof@linux.vnet.ibm.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.