{"id":2197341,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2197341/?format=json","project":{"id":28,"url":"http://patchwork.ozlabs.org/api/1.0/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},"msgid":"<20260217170419.236739-2-Simon.Richter@hogyros.de>","date":"2026-02-17T17:04:15","name":"[1/5] vgaarb: pass vga_get errors to userspace","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"6937b9f4cc23baafaec172d6f197830626d68de0","submitter":{"id":91044,"url":"http://patchwork.ozlabs.org/api/1.0/people/91044/?format=json","name":"Simon Richter","email":"Simon.Richter@hogyros.de"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-pci/patch/20260217170419.236739-2-Simon.Richter@hogyros.de/mbox/","series":[{"id":492462,"url":"http://patchwork.ozlabs.org/api/1.0/series/492462/?format=json","date":"2026-02-17T17:04:19","name":"bridges without VGA support","version":1,"mbox":"http://patchwork.ozlabs.org/series/492462/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2197341/checks/","tags":{},"headers":{"Return-Path":"\n <linux-pci+bounces-47485-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 spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-pci+bounces-47485-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=185.187.169.70","smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=hogyros.de","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=hogyros.de"],"Received":["from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\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 4fFmT45zM6z1xpl\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 18 Feb 2026 04:14:00 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 7F96D302B83F\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 17 Feb 2026 17:13:56 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 698CF36F436;\n\tTue, 17 Feb 2026 17:13:55 +0000 (UTC)","from psionic.psi5.com (psionic.psi5.com [185.187.169.70])\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 EB7C836E491\n\tfor <linux-pci@vger.kernel.org>; Tue, 17 Feb 2026 17:13:53 +0000 (UTC)","from localhost.localdomain (unknown\n [IPv6:2400:2410:b120:f200:2e09:4dff:fe00:2e9])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(Client did not present a certificate)\n\tby psionic.psi5.com (Postfix) with ESMTPSA id 34A883F204;\n\tTue, 17 Feb 2026 18:04:41 +0100 (CET)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1771348435; cv=none;\n b=Vae5FruVu25BZFn3Lo0gQ8GK0We+sTcJa0RE14hFyTAG/M58+1K6IIEOf+0rFG6dkEoo2LawimJzo9XBCrR/OL0fXTXM8ltXWWcd7N1Gs278GUiVp/SX3W9i/1ZQqoc1RifdCmFZTYxtP+oFwTM5UO0j1hQmY+7KNDFrXDTKZpc=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1771348435; c=relaxed/simple;\n\tbh=YcG2+sY91S7CPMpIvFiMm5l+Kluf4+CWdFaeP7g0DxU=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=IVHLQVjVJICyHe8lk2sGrrtR8WeDCO6XedPB7gBsoyb7JxwO0Ip3kwZtYRd2qKzQH41HRnwpItn8wFmTLBqll48iNBMxBkh1ciFTcsABl92fNKx0BTm1guVdJdXemUCTv67cEvy4/3hZRH+3BDjQXAE5jOcoMjTX2FVfgKmZM+g=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=hogyros.de;\n spf=pass smtp.mailfrom=hogyros.de; arc=none smtp.client-ip=185.187.169.70","From":"Simon Richter <Simon.Richter@hogyros.de>","To":"linux-pci@vger.kernel.org","Cc":"intel-xe@lists.freedesktop.org,\n\tdri-devel@lists.freedesktop.org,\n\tSimon Richter <Simon.Richter@hogyros.de>","Subject":"[PATCH 1/5] vgaarb: pass vga_get errors to userspace","Date":"Wed, 18 Feb 2026 02:04:15 +0900","Message-ID":"<20260217170419.236739-2-Simon.Richter@hogyros.de>","X-Mailer":"git-send-email 2.47.3","In-Reply-To":"<20260217170419.236739-1-Simon.Richter@hogyros.de>","References":"<20260217170419.236739-1-Simon.Richter@hogyros.de>","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-Transfer-Encoding":"8bit"},"content":"If vga_get fails, return the error code via the write syscall.\n\nSigned-off-by: Simon Richter <Simon.Richter@hogyros.de>\n---\n drivers/pci/vgaarb.c | 8 +++++++-\n 1 file changed, 7 insertions(+), 1 deletion(-)","diff":"diff --git a/drivers/pci/vgaarb.c b/drivers/pci/vgaarb.c\nindex 87143e235033..5c2719cb1bfa 100644\n--- a/drivers/pci/vgaarb.c\n+++ b/drivers/pci/vgaarb.c\n@@ -1134,6 +1134,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user *buf,\n \tchar kbuf[64], *curr_pos;\n \tsize_t remaining = count;\n \n+\tint err;\n \tint ret_val;\n \tint i;\n \n@@ -1165,7 +1166,12 @@ static ssize_t vga_arb_write(struct file *file, const char __user *buf,\n \t\t\tgoto done;\n \t\t}\n \n-\t\tvga_get_uninterruptible(pdev, io_state);\n+\t\terr = vga_get_uninterruptible(pdev, io_state);\n+\t\tif (unlikely(err))\n+\t\t{\n+\t\t\tret_val = err;\n+\t\t\tgoto done;\n+\t\t}\n \n \t\t/* Update the client's locks lists */\n \t\tfor (i = 0; i < MAX_USER_CARDS; i++) {\n","prefixes":["1/5"]}