{"id":2215870,"url":"http://patchwork.ozlabs.org/api/patches/2215870/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/patch/20260325-vfio_pci_ism-v8-1-ddc504cde914@linux.ibm.com/","project":{"id":28,"url":"http://patchwork.ozlabs.org/api/projects/28/?format=json","name":"Linux PCI development","link_name":"linux-pci","list_id":"linux-pci.vger.kernel.org","list_email":"linux-pci@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260325-vfio_pci_ism-v8-1-ddc504cde914@linux.ibm.com>","list_archive_url":null,"date":"2026-03-25T13:31:23","name":"[v8,1/3] vfio/pci: Rename vfio_config_do_rw() to vfio_pci_config_rw_single() and export it","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"b0e3b51bbb6232bf7c4e9b29adf747776243e52c","submitter":{"id":91782,"url":"http://patchwork.ozlabs.org/api/people/91782/?format=json","name":"Julian Ruess","email":"julianr@linux.ibm.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-pci/patch/20260325-vfio_pci_ism-v8-1-ddc504cde914@linux.ibm.com/mbox/","series":[{"id":497446,"url":"http://patchwork.ozlabs.org/api/series/497446/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/list/?series=497446","date":"2026-03-25T13:31:25","name":"vfio/pci: Introduce vfio_pci driver for ISM devices","version":8,"mbox":"http://patchwork.ozlabs.org/series/497446/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2215870/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2215870/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linux-pci+bounces-51065-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pci@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=P3KKqkrR;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-pci+bounces-51065-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com\n header.b=\"P3KKqkrR\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=148.163.158.5","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.ibm.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=linux.ibm.com"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fgpCj69Xhz1xy3\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 26 Mar 2026 00:48:49 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id E9B9B31CF247\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 25 Mar 2026 13:31:57 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id CC396246BC0;\n\tWed, 25 Mar 2026 13:31:52 +0000 (UTC)","from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com\n [148.163.158.5])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 617A323C512;\n\tWed, 25 Mar 2026 13:31:51 +0000 (UTC)","from pps.filterd (m0353725.ppops.net [127.0.0.1])\n\tby mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 62P7Dgba3395859;\n\tWed, 25 Mar 2026 13:31:46 GMT","from ppma13.dal12v.mail.ibm.com\n (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221])\n\tby mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4d1ky07r73-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n\tWed, 25 Mar 2026 13:31:46 +0000 (GMT)","from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1])\n\tby ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id\n 62PBSWZr011824;\n\tWed, 25 Mar 2026 13:31:45 GMT","from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229])\n\tby ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4d27vk6g1w-1\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n\tWed, 25 Mar 2026 13:31:45 +0000","from smtpav01.fra02v.mail.ibm.com (smtpav01.fra02v.mail.ibm.com\n [10.20.54.100])\n\tby smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id\n 62PDVfCO36045292\n\t(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n\tWed, 25 Mar 2026 13:31:41 GMT","from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id 9628420043;\n\tWed, 25 Mar 2026 13:31:41 +0000 (GMT)","from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1])\n\tby IMSVA (Postfix) with ESMTP id 43B982004D;\n\tWed, 25 Mar 2026 13:31:41 +0000 (GMT)","from tuxmaker.boeblingen.de.ibm.com (unknown [9.87.85.9])\n\tby smtpav01.fra02v.mail.ibm.com (Postfix) with ESMTP;\n\tWed, 25 Mar 2026 13:31:41 +0000 (GMT)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1774445512; cv=none;\n b=DiztGS4tZgBUqtOhte5VlLASw3A8w7vxqejfblVa2lrWAZi2hjAn1yXRMYjNX07tHciGDQ5H0aYUyTzwWNXQqQ3X20pwAdYFyvcYB/940djcMl2puCSfGWk9AqtYtzDhR74GGmDCySRTupAfwnNE2niU39DjyAq6671A+lambbc=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1774445512; c=relaxed/simple;\n\tbh=Xp06g/JyrGjiIf6S/4KzRoPbggPcb32EOw0bMnd70mg=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=fodmscwkS7V9l6JUgu8y9DcQM77Pu+/snSzvDnFWRMrsv/V4AIxON208PPJWcUQrqPUBmG+44qQCZ7SJxihioNbJsEXZn2BH618h2F98pyre4SKPUKr7Wer8UHCfpUhuLMetX1nrPiewKmfntfzZ9eKH0sfhkWQQOcMZhMMJLVk=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=linux.ibm.com;\n spf=pass smtp.mailfrom=linux.ibm.com;\n dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com\n header.b=P3KKqkrR; arc=none smtp.client-ip=148.163.158.5","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc\n\t:content-transfer-encoding:content-type:date:from:in-reply-to\n\t:message-id:mime-version:references:subject:to; s=pp1; bh=ws98jf\n\tqp8fT8UnB+vgUnR2tXV+A3dsfVNfiI/qBkFX0=; b=P3KKqkrRWmoXkplxF9yQR4\n\tOl89mEE2aLLQDsOMOiPdyZueaEsH0fnG1FpHr1ZfqINAR7xv2mQYCIsMgYY6H0zr\n\t3Fe7jKQmCzfdmoJRWV65M6rtUsMH69Wh9yp0709Cq+5ugCjCFp9ozIayf/qIn9O4\n\t9KRpsZRZS3x+XqAXObW6lVRabK2PS9o6KHbM2O4p8F765BXPY0/BN5RqG0YNbzBe\n\t+YpwVA/4saE9LZlxWeN/vWcxxyFcTKbptxGlQuNsvcJuF4P7tmRcRWkKaKPNcfek\n\tftI7bnXa8A/HXNK+Ki61u0TcbBFQOJgsn2G0hCMpUJ3o6BTNrDZY89dm7xYcxFdg\n\t==","From":"Julian Ruess <julianr@linux.ibm.com>","Date":"Wed, 25 Mar 2026 14:31:23 +0100","Subject":"[PATCH v8 1/3] vfio/pci: Rename vfio_config_do_rw() to\n vfio_pci_config_rw_single() and export it","Precedence":"bulk","X-Mailing-List":"linux-pci@vger.kernel.org","List-Id":"<linux-pci.vger.kernel.org>","List-Subscribe":"<mailto:linux-pci+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-pci+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"8bit","Message-Id":"<20260325-vfio_pci_ism-v8-1-ddc504cde914@linux.ibm.com>","References":"<20260325-vfio_pci_ism-v8-0-ddc504cde914@linux.ibm.com>","In-Reply-To":"<20260325-vfio_pci_ism-v8-0-ddc504cde914@linux.ibm.com>","To":"schnelle@linux.ibm.com, wintera@linux.ibm.com, ts@linux.ibm.com,\n        oberpar@linux.ibm.com, gbayer@linux.ibm.com,\n        Alex Williamson <alex@shazbot.org>, Jason Gunthorpe <jgg@ziepe.ca>,\n        Yishai Hadas <yishaih@nvidia.com>,\n        Shameer Kolothum <skolothumtho@nvidia.com>,\n        Kevin Tian <kevin.tian@intel.com>","Cc":"mjrosato@linux.ibm.com, alifm@linux.ibm.com, raspl@linux.ibm.com,\n        hca@linux.ibm.com, agordeev@linux.ibm.com, gor@linux.ibm.com,\n        julianr@linux.ibm.com, kvm@vger.kernel.org,\n        linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org,\n        linux-pci@vger.kernel.org","X-Mailer":"b4 0.14.2","X-TM-AS-GCONF":"00","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwMzI1MDA5NSBTYWx0ZWRfX3Ylqq9b3qI4o\n ipuWaza0ugWrvCG30qtA+I/5Mf7Q741czyy1Yi/1UJp0hLz3JISJQbQwhOlZTpSZfHE9H1EmOuG\n vO1Z6oAHIQu2Sa/ge+t1F+Wp53SNQ4LvIA3DfJaqeH0g6790VsKgseQFeSKza4jEhFEOFHGP8DJ\n x0wc3c95WO0tq5W8yLQBBDIjGnrCuIOZ5UyqXlIr+Gx9Fob7t5VZBl0+ZKdLL4wB2bIRkJwFAlK\n qQJonYDh/CM0Qjv4M9nqFp5fjdHZrNaQnbtHbW7gmJ0Is0J5WauqrOO+juQVpuHYPM7J09DklIH\n GOojMpDe9eS2jG8VGxaC5gOuXuvTvE0+be7BN05J+J4+TFJERVLSs4nA7apjnMsjHe+G2jj4aaW\n 1MvjL5kUP0yhaoPJf9bFrDCW4E6g8DXYJPUL6uJdMofP37kZf6MgN3a7ME6gFt7ebLOxcAZdAn1\n cp2gS3OsT9X1hRSNsVA==","X-Authority-Analysis":"v=2.4 cv=JK42csKb c=1 sm=1 tr=0 ts=69c3e3c2 cx=c_pps\n a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17\n a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=VkNPw1HP01LnGYTKEx00:22\n a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VnNF1IyMAAAA:8\n a=mooU_oynDD9EFzHbF-IA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10","X-Proofpoint-ORIG-GUID":"rjunKXmwxRwQiY9T4-exEQ1rJLhAMUOZ","X-Proofpoint-GUID":"rjunKXmwxRwQiY9T4-exEQ1rJLhAMUOZ","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-03-25_04,2026-03-24_01,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n impostorscore=0 clxscore=1015 priorityscore=1501 malwarescore=0 adultscore=0\n spamscore=0 suspectscore=0 phishscore=0 lowpriorityscore=0 bulkscore=0\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603250095"},"content":"A follow-up patch adds a new variant driver for s390 ISM devices. Since\nthis device uses a 256 TiB BAR 0 that is never mapped, the variant\ndriver needs its own ISM_VFIO_PCI_OFFSET_MASK. To minimally mirror the\nfunctionality of vfio_pci_config_rw() with such a custom mask, export\nvfio_config_do_rw(). To better distinguish the now exported function\nfrom vfio_pci_config_rw(), rename it to vfio_pci_config_rw_single()\nemphasizing that it does a single config space read or write.\n\nReviewed-by: Niklas Schnelle <schnelle@linux.ibm.com>\nSigned-off-by: Julian Ruess <julianr@linux.ibm.com>\n---\n drivers/vfio/pci/vfio_pci_config.c | 8 +++++---\n drivers/vfio/pci/vfio_pci_priv.h   | 4 ++++\n 2 files changed, 9 insertions(+), 3 deletions(-)","diff":"diff --git a/drivers/vfio/pci/vfio_pci_config.c b/drivers/vfio/pci/vfio_pci_config.c\nindex b4e39253f98da61a5e2b6dd0089b2f6aef4b85a0..a10ed733f0e3af89c185f8b93192ba6b004f05ed 100644\n--- a/drivers/vfio/pci/vfio_pci_config.c\n+++ b/drivers/vfio/pci/vfio_pci_config.c\n@@ -1880,8 +1880,9 @@ static size_t vfio_pci_cap_remaining_dword(struct vfio_pci_core_device *vdev,\n \treturn i;\n }\n \n-static ssize_t vfio_config_do_rw(struct vfio_pci_core_device *vdev, char __user *buf,\n-\t\t\t\t size_t count, loff_t *ppos, bool iswrite)\n+ssize_t vfio_pci_config_rw_single(struct vfio_pci_core_device *vdev,\n+\t\t\t\t  char __user *buf, size_t count, loff_t *ppos,\n+\t\t\t\t  bool iswrite)\n {\n \tstruct pci_dev *pdev = vdev->pdev;\n \tstruct perm_bits *perm;\n@@ -1970,6 +1971,7 @@ static ssize_t vfio_config_do_rw(struct vfio_pci_core_device *vdev, char __user\n \n \treturn ret;\n }\n+EXPORT_SYMBOL_GPL(vfio_pci_config_rw_single);\n \n ssize_t vfio_pci_config_rw(struct vfio_pci_core_device *vdev, char __user *buf,\n \t\t\t   size_t count, loff_t *ppos, bool iswrite)\n@@ -1981,7 +1983,7 @@ ssize_t vfio_pci_config_rw(struct vfio_pci_core_device *vdev, char __user *buf,\n \tpos &= VFIO_PCI_OFFSET_MASK;\n \n \twhile (count) {\n-\t\tret = vfio_config_do_rw(vdev, buf, count, &pos, iswrite);\n+\t\tret = vfio_pci_config_rw_single(vdev, buf, count, &pos, iswrite);\n \t\tif (ret < 0)\n \t\t\treturn ret;\n \ndiff --git a/drivers/vfio/pci/vfio_pci_priv.h b/drivers/vfio/pci/vfio_pci_priv.h\nindex 27ac280f00b975989f6cbc02c11aaca01f9badf3..fca9d0dfac90f8eaaf2d281dd2213111c46d76a1 100644\n--- a/drivers/vfio/pci/vfio_pci_priv.h\n+++ b/drivers/vfio/pci/vfio_pci_priv.h\n@@ -37,6 +37,10 @@ int vfio_pci_set_irqs_ioctl(struct vfio_pci_core_device *vdev, uint32_t flags,\n ssize_t vfio_pci_config_rw(struct vfio_pci_core_device *vdev, char __user *buf,\n \t\t\t   size_t count, loff_t *ppos, bool iswrite);\n \n+ssize_t vfio_pci_config_rw_single(struct vfio_pci_core_device *vdev,\n+\t\t\t\t  char __user *buf, size_t count, loff_t *ppos,\n+\t\t\t\t  bool iswrite);\n+\n ssize_t vfio_pci_bar_rw(struct vfio_pci_core_device *vdev, char __user *buf,\n \t\t\tsize_t count, loff_t *ppos, bool iswrite);\n \n","prefixes":["v8","1/3"]}