{"id":2197342,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2197342/?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-4-Simon.Richter@hogyros.de>","date":"2026-02-17T17:04:17","name":"[3/5] vgaarb: mark vga_get family as __must_check","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"9539f6d9f9623fb9e85b6798b5df027e81485d21","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-4-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/2197342/checks/","tags":{},"headers":{"Return-Path":"\n <linux-pci+bounces-47483-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:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-pci+bounces-47483-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 sea.lore.kernel.org (sea.lore.kernel.org\n [IPv6:2600:3c0a:e001:db::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 4fFmTW5GNnz1xpl\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 18 Feb 2026 04:14:23 +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 22977302334F\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 6117636F437;\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 EB74A36E48D\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 EE5CE3F213;\n\tTue, 17 Feb 2026 18:04:45 +0100 (CET)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1771348435; cv=none;\n b=AxaeKFy0KasTNsF1IsVWECC49Pb41tFUhv6drf/UT/rtZGlft/WiGCPh5tBCX3gS6iFReRn9JS3qCZPZyLxKIExmoRN5NuQhA37/LO8cs61oYELkwniw2dSZut9FM5zf5uEIZX0PZ6kUHbQKZueVlZiFqWxoP3vF+VvQWGQ8R04=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1771348435; c=relaxed/simple;\n\tbh=3hDP8E2QyMRL7go9lPyXxzIl4hUdlfEoRBHkpCisrms=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=g4CXyf3CjCWwgu5di/WmyC+ecY+lqPgfu9GldarPEUbKocxr5KYN6bWNFcmVd1FhIY2U12isB0q/lWlydt2yYav6gyvFnMtoGGulMgaI0brH/Wx59h5c/xvBU/3CtDciAq4SUyoN4NIkGHhhd3NA9HQF7lm0D22/Xk07Q6pFaqI=","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 3/5] vgaarb: mark vga_get family as __must_check","Date":"Wed, 18 Feb 2026 02:04:17 +0900","Message-ID":"<20260217170419.236739-4-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":"These functions can return an error, but some callers expect they don't, and\nunconditionally access VGA registers afterwards and call vga_put.\n\nSigned-off-by: Simon Richter <Simon.Richter@hogyros.de>\n---\n include/linux/vgaarb.h | 9 +++++----\n 1 file changed, 5 insertions(+), 4 deletions(-)","diff":"diff --git a/include/linux/vgaarb.h b/include/linux/vgaarb.h\nindex 97129a1bbb7d..de683d499dfa 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\tint 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,7 +40,7 @@ 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+static inline int __must_check vga_get(struct pci_dev *pdev, unsigned int rsrc,\n \t\tint interruptible)\n {\n \treturn 0;\n@@ -74,7 +75,7 @@ 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+static inline int __must_check vga_get_interruptible(struct pci_dev *pdev,\n \t\t\t\t\tunsigned int rsrc)\n {\n \treturn vga_get(pdev, rsrc, 1);\n@@ -89,7 +90,7 @@ 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+static inline int __must_check vga_get_uninterruptible(struct pci_dev *pdev,\n \t\t\t\t\t  unsigned int rsrc)\n {\n \treturn vga_get(pdev, rsrc, 0);\n","prefixes":["3/5"]}