From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:24029 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728268AbgEENA1 (ORCPT ); Tue, 5 May 2020 09:00:27 -0400 Subject: Re: [PATCH v4 0/8] s390x/vfio-ccw: Channel Path Handling [KVM] References: <20200505122745.53208-1-farman@linux.ibm.com> <20200505145435.40113d4c.cohuck@redhat.com> From: Eric Farman Message-ID: <14c3cf68-c1e5-b46f-d75e-955dbdd63df8@linux.ibm.com> Date: Tue, 5 May 2020 09:00:20 -0400 MIME-Version: 1.0 In-Reply-To: <20200505145435.40113d4c.cohuck@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-s390-owner@vger.kernel.org List-ID: To: Cornelia Huck Cc: linux-s390@vger.kernel.org, kvm@vger.kernel.org, Halil Pasic , Jason Herne , Jared Rossi On 5/5/20 8:56 AM, Cornelia Huck wrote: > On Tue, 5 May 2020 14:27:37 +0200 > Eric Farman wrote: > >> Here is a new pass at the channel-path handling code for vfio-ccw. >> Changes from previous versions are recorded in git notes for each patch. >> Patches 5 through 7 got swizzled a little bit, in order to better >> compartmentalize the code they define. Basically, the IRQ definitions >> were moved from patch 7 to 5, and then patch 6 was placed ahead of >> patch 5. >> >> I have put Conny's r-b's on patches 1, 3, 4, (new) 5, and 8, and believe >> I have addressed all comments from v3, with two exceptions: >> >>> I'm wondering if we should make this [vfio_ccw_schib_region_{write,release}] >>> callback optional (not in this patch). >> >> I have that implemented on top of this series, and will send later as part >> of a larger cleanup series. > > Good, sounds reasonable. > >> >>> One thing though that keeps coming up: do we need any kind of >>> serialization? Can there be any confusion from concurrent reads from >>> userspace, or are we sure that we always provide consistent data? >> >> I _think_ this is in good shape, though as suggested another set of >> eyeballs would be nice. There is still a problem on the main >> interrupt/FSM path, which I'm not attempting to address here. > > I'll try to think about it some more. Re: interrupt/FSM, I now have two separate patches that each straighten things out on their own. And a handful of debug patches that probably only make things worse. :) I'll get one/both of those meaningful patches sent to the list so we can have that discussion separately from this code. > >> >> With this code plus the corresponding QEMU series (posted momentarily) >> applied I am able to configure off/on a CHPID (for example, by issuing >> "chchp -c 0/1 xx" on the host), and the guest is able to see both the >> events and reflect the updated path masks in its structures. >> >> v3: https://lore.kernel.org/kvm/20200417023001.65006-1-farman@linux.ibm.com/ >> v2: https://lore.kernel.org/kvm/20200206213825.11444-1-farman@linux.ibm.com/ >> v1: https://lore.kernel.org/kvm/20191115025620.19593-1-farman@linux.ibm.com/ >> >> Eric Farman (3): >> vfio-ccw: Refactor the unregister of the async regions >> vfio-ccw: Refactor IRQ handlers >> vfio-ccw: Add trace for CRW event >> >> Farhan Ali (5): >> vfio-ccw: Introduce new helper functions to free/destroy regions >> vfio-ccw: Register a chp_event callback for vfio-ccw >> vfio-ccw: Introduce a new schib region >> vfio-ccw: Introduce a new CRW region >> vfio-ccw: Wire up the CRW irq and CRW region >> >> Documentation/s390/vfio-ccw.rst | 38 ++++++- >> drivers/s390/cio/Makefile | 2 +- >> drivers/s390/cio/vfio_ccw_chp.c | 148 +++++++++++++++++++++++++ >> drivers/s390/cio/vfio_ccw_drv.c | 165 ++++++++++++++++++++++++++-- >> drivers/s390/cio/vfio_ccw_ops.c | 65 ++++++++--- >> drivers/s390/cio/vfio_ccw_private.h | 16 +++ >> drivers/s390/cio/vfio_ccw_trace.c | 1 + >> drivers/s390/cio/vfio_ccw_trace.h | 30 +++++ >> include/uapi/linux/vfio.h | 3 + >> include/uapi/linux/vfio_ccw.h | 18 +++ >> 10 files changed, 458 insertions(+), 28 deletions(-) >> create mode 100644 drivers/s390/cio/vfio_ccw_chp.c >> >