{"id":2197772,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2197772/?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":"<20260218134633.461181-4-Simon.Richter@hogyros.de>","date":"2026-02-18T13:46:31","name":"[v2,3/5] vgaarb: mark vga_get family as __must_check","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"da49424f07a424490bf5caf30c6ed6750a2196d9","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/20260218134633.461181-4-Simon.Richter@hogyros.de/mbox/","series":[{"id":492553,"url":"http://patchwork.ozlabs.org/api/1.0/series/492553/?format=json","date":"2026-02-18T13:46:28","name":"Bridges without VGA support","version":2,"mbox":"http://patchwork.ozlabs.org/series/492553/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2197772/checks/","tags":{},"headers":{"Return-Path":"\n <linux-pci+bounces-47565-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:3c15:e001:75::12fc:5321; helo=sin.lore.kernel.org;\n envelope-from=linux-pci+bounces-47565-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 sin.lore.kernel.org (sin.lore.kernel.org\n [IPv6:2600:3c15:e001:75::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fGHr04kJwz1xvq\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 19 Feb 2026 00:47:12 +1100 (AEDT)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sin.lore.kernel.org (Postfix) with ESMTP id F1EC4300BC65\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 18 Feb 2026 13:47:06 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 8836732863F;\n\tWed, 18 Feb 2026 13:47:05 +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 1D87A328246\n\tfor <linux-pci@vger.kernel.org>; Wed, 18 Feb 2026 13:47:03 +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 398093F213;\n\tWed, 18 Feb 2026 14:47:00 +0100 (CET)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1771422425; cv=none;\n b=Gek0o7RkM+PZiYmJszhiWJrWgxw/Y85j6wTN4ogBv6BPjQPwykwMySC1oe0Ol+vVuk5QV596s20chn8Ykal0CetPKo3D+r5G+Z7A/corcmkMBQGgDfwFtDpQo8TDPxQw16dSDShQBgMy2qHbOiFURvBsh0aJOvoAgrV5nReFcjw=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1771422425; c=relaxed/simple;\n\tbh=1WdgBCenBtltjBcqGb1FLuDG1YNItYNz4f+TC0XtgxY=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=nwIgMWgH22WtiVnVsG/H41jIig7grjp+Zkg7BH3RstbV9Ny6x9KGJQahqXurzRNAH8OEAhuj4gnxxdy7dxyboT8GfVoiheGCSlRnWE1Dt6+YCSUu0WsM1qNKNkWPB21e6atrm9jsRRSi33X8Ds1Q4DXr016ugtiRvCIuHXGoaW0=","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 v2 3/5] vgaarb: mark vga_get family as __must_check","Date":"Wed, 18 Feb 2026 22:46:31 +0900","Message-ID":"<20260218134633.461181-4-Simon.Richter@hogyros.de>","X-Mailer":"git-send-email 2.47.3","In-Reply-To":"<20260218134633.461181-1-Simon.Richter@hogyros.de>","References":"<20260217170419.236739-1-Simon.Richter@hogyros.de>\n <20260218134633.461181-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":"These functions can return an error, but some callers expect they don't,\nand unconditionally access VGA registers afterwards and call vga_put.\n\nSigned-off-by: Simon Richter <Simon.Richter@hogyros.de>\n---\n include/linux/vgaarb.h | 15 ++++++++-------\n 1 file changed, 8 insertions(+), 7 deletions(-)","diff":"diff --git a/include/linux/vgaarb.h b/include/linux/vgaarb.h\nindex 97129a1bbb7d..eed524c67c22 100644\n--- a/include/linux/vgaarb.h\n+++ b/include/linux/vgaarb.h\n@@ -27,7 +27,8 @@ struct pci_dev;\n \n #ifdef CONFIG_VGA_ARB\n void vga_set_legacy_decoding(struct pci_dev *pdev, unsigned int decodes);\n-int vga_get(struct pci_dev *pdev, unsigned int rsrc, int interruptible);\n+int __must_check vga_get(struct pci_dev *pdev, unsigned int rsrc,\n+\t\t\t int interruptible);\n void vga_put(struct pci_dev *pdev, unsigned int rsrc);\n struct pci_dev *vga_default_device(void);\n void vga_set_default_device(struct pci_dev *pdev);\n@@ -39,8 +40,8 @@ static inline void vga_set_legacy_decoding(struct pci_dev *pdev,\n \t\tunsigned int decodes)\n {\n };\n-static inline int vga_get(struct pci_dev *pdev, unsigned int rsrc,\n-\t\tint interruptible)\n+static inline int __must_check vga_get(struct pci_dev *pdev, unsigned int rsrc,\n+\t\t\t\t       int interruptible)\n {\n \treturn 0;\n }\n@@ -74,8 +75,8 @@ static inline int vga_client_register(struct pci_dev *pdev,\n  *\n  * On success, release the VGA resource again with vga_put().\n  */\n-static inline int vga_get_interruptible(struct pci_dev *pdev,\n-\t\t\t\t\tunsigned int rsrc)\n+static inline int __must_check vga_get_interruptible(struct pci_dev *pdev,\n+\t\t\t\t\t\t     unsigned int rsrc)\n {\n \treturn vga_get(pdev, rsrc, 1);\n }\n@@ -89,8 +90,8 @@ static inline int vga_get_interruptible(struct pci_dev *pdev,\n  *\n  * On success, release the VGA resource again with vga_put().\n  */\n-static inline int vga_get_uninterruptible(struct pci_dev *pdev,\n-\t\t\t\t\t  unsigned int rsrc)\n+static inline int __must_check vga_get_uninterruptible(struct pci_dev *pdev,\n+\t\t\t\t\t\t       unsigned int rsrc)\n {\n \treturn vga_get(pdev, rsrc, 0);\n }\n","prefixes":["v2","3/5"]}