From patchwork Fri Nov 15 03:34:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Farman X-Patchwork-Id: 1195315 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=linux.ibm.com Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 47Dkky0j57z9s7T for ; Fri, 15 Nov 2019 14:45:12 +1100 (AEDT) Received: from localhost ([::1]:35192 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iVSXk-0008N0-UD for incoming@patchwork.ozlabs.org; Thu, 14 Nov 2019 22:45:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44939) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iVSXR-0008Mq-L8 for qemu-devel@nongnu.org; Thu, 14 Nov 2019 22:44:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iVSXP-0001Se-M3 for qemu-devel@nongnu.org; Thu, 14 Nov 2019 22:44:49 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:14838 helo=mx0a-001b2d01.pphosted.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iVSXO-0001RO-A1 for qemu-devel@nongnu.org; Thu, 14 Nov 2019 22:44:46 -0500 Received: from pps.filterd (m0098419.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id xAF3YThW117964 for ; Thu, 14 Nov 2019 22:35:25 -0500 Received: from e06smtp03.uk.ibm.com (e06smtp03.uk.ibm.com [195.75.94.99]) by mx0b-001b2d01.pphosted.com with ESMTP id 2w9jtv6qdt-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 14 Nov 2019 22:35:23 -0500 Received: from localhost by e06smtp03.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 15 Nov 2019 03:34:41 -0000 Received: from b06avi18626390.portsmouth.uk.ibm.com (9.149.26.192) by e06smtp03.uk.ibm.com (192.168.101.133) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Fri, 15 Nov 2019 03:34:39 -0000 Received: from d06av25.portsmouth.uk.ibm.com (d06av25.portsmouth.uk.ibm.com [9.149.105.61]) by b06avi18626390.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id xAF3Y1MX34931138 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 15 Nov 2019 03:34:01 GMT Received: from d06av25.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F127F11C054; Fri, 15 Nov 2019 03:34:37 +0000 (GMT) Received: from d06av25.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DE8B111C04C; Fri, 15 Nov 2019 03:34:37 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by d06av25.portsmouth.uk.ibm.com (Postfix) with ESMTPS; Fri, 15 Nov 2019 03:34:37 +0000 (GMT) Received: by tuxmaker.boeblingen.de.ibm.com (Postfix, from userid 4958) id 96A9DE01C5; Fri, 15 Nov 2019 04:34:37 +0100 (CET) From: Eric Farman To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org Subject: [RFC PATCH v1 0/8] s390x/vfio-ccw: Channel Path Handling Date: Fri, 15 Nov 2019 04:34:29 +0100 X-Mailer: git-send-email 2.17.1 X-TM-AS-GCONF: 00 x-cbid: 19111503-0012-0000-0000-00000363C326 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 19111503-0013-0000-0000-0000219F3EDF Message-Id: <20191115033437.37926-1-farman@linux.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95, 18.0.572 definitions=2019-11-14_07:2019-11-14, 2019-11-14 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 adultscore=0 clxscore=1015 impostorscore=0 bulkscore=0 spamscore=0 mlxscore=0 lowpriorityscore=0 priorityscore=1501 mlxlogscore=706 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1910280000 definitions=main-1911150029 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 148.163.158.5 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Halil Pasic , Jason Herne , Eric Farman , Cornelia Huck , Jared Rossi Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Here is a first pass at the channel-path handling code for vfio-ccw, to take advantage of the corresponding kernel patches posted here: https://lore.kernel.org/kvm/20191115025620.19593-1-farman@linux.ibm.com/ As with the KVM patches, these were originally written by Farhan Ali this past summer, and my git notes log the changes I've made since picking up this work. There are two commits at the front of this series that seem to be pre-reqs to the actual changes for this, which is why the linux-headers update seems lost in the middle of this. I've tried to be mindful of testing permutations of new/old kernel with either new/old QEMU, and it seems to be in good shape. Eric Farman (2): vfio-ccw: Refactor cleanup of regions vfio-ccw: Refactor ccw irq handler Farhan Ali (6): vfio-ccw: Return IOINST_CC_NOT_OPERATIONAL for EIO vfio-ccw: Don't inject an I/O interrupt if the subchannel is not enabled linux-headers: update vfio-ccw: Add support for the schib region vfio-ccw: Add support for the crw region vfio-ccw: Add support for the CRW irq hw/s390x/css.c | 8 +- hw/s390x/s390-ccw.c | 20 ++++ hw/vfio/ccw.c | 195 +++++++++++++++++++++++++++++---- include/hw/s390x/css.h | 3 +- include/hw/s390x/s390-ccw.h | 1 + linux-headers/linux/vfio.h | 3 + linux-headers/linux/vfio_ccw.h | 10 ++ target/s390x/ioinst.c | 3 +- 8 files changed, 217 insertions(+), 26 deletions(-)