From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailrelay-egress4.pub.mailoutpod2-cph3.one.com (mailrelay-egress4.pub.mailoutpod2-cph3.one.com [46.30.211.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6F665284662 for ; Sat, 13 Dec 2025 22:40:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=46.30.211.179 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765665606; cv=none; b=sJTXSXFm2ohAH6CxDtBqAIjEvRZUTMkhqRXwqLj6XN/Ng6kdWMUg9B1WVGsdHNaae9p/+Oho/MzmBzrlh0cU8MoBHrRrVhK2YpoLJMMx8WyGBrnfYS0vWKup9e/FgPII5HqBgvXYW962ukoNLmfO6mit0N/BRiJn5o9FtZIVeEc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765665606; c=relaxed/simple; bh=gpvpJGJrWlkgk+3hJKM53TEbcpNKyweddkTe4naUJrQ=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=nUmWxEKo91ZaE0z+5oebcZmBhCnZaMREGY4yi/0kE+1gI3X0SW5NAvCj4W1PLpjQqjvNR+/sO6zfXMg1Z7Xn8JPTGCdrh8S2qnGqcS1Gs3SGACJwfn34jrz0TTW9Ijw5oeYahcWRWNY3dH4hMsRshWujsP7Wx6BHYtlZPce6YZc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ravnborg.org; spf=none smtp.mailfrom=ravnborg.org; dkim=pass (2048-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b=M+mvJRvr; dkim=permerror (0-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b=nwz0TLxi; arc=none smtp.client-ip=46.30.211.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ravnborg.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=ravnborg.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b="M+mvJRvr"; dkim=permerror (0-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b="nwz0TLxi" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1765665532; x=1766270332; d=ravnborg.org; s=rsa2; h=in-reply-to:content-type:mime-version:references:message-id:subject:cc:to: from:date:from; bh=AGTupz+Pclwt+J47h8KMxZjHtngDo80UP2S/FxfkJ9A=; b=M+mvJRvrwMMGQo968yNDjATJymPOjG8pYGYCnY8thshjrwr4YSiz1srs3tBXQJo8LT4fihNr/znwB AIO1stBFjWlhAchezvTAcqMmWgKvl8gK6FTaK4RhWFu8PP1+O3AHrjj6a6td6xCoKHuY0+cDoNs2PH yJi6+GKdwMPNkTicUEPBTNIR1yr8Qner63k5BSea3gbWMQLqjMZeNsSRcxI7cqsacP9JqS41LpJqkt wA+ZCMa8DX8DiKaiGLqaqRnN7/gqzm+hx2JK8phQDQ3rHsUnHhxGGs2UGuOYxRf9AD5UqgYyPsNf/H Aos7cS9yzet1vj/N2YGs11JgokNx5xQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1765665532; x=1766270332; d=ravnborg.org; s=ed2; h=in-reply-to:content-type:mime-version:references:message-id:subject:cc:to: from:date:from; bh=AGTupz+Pclwt+J47h8KMxZjHtngDo80UP2S/FxfkJ9A=; b=nwz0TLxi6qRatp5o1I1mUKI7IqFVd2zy+F31RFJALsZ7ynofpfB9LO5C7a5gDiVncnPhcVkWWc8w+ xMVEzUDAw== X-HalOne-ID: 7e017289-d874-11f0-9f68-c9fa7b04d629 Received: from ravnborg.org (unknown [2a00:fd01:81e9:6100:cbc5:f170:b0ba:1217]) by mailrelay1.pub.mailoutpod3-cph3.one.com (Halon) with ESMTPSA id 7e017289-d874-11f0-9f68-c9fa7b04d629; Sat, 13 Dec 2025 22:38:52 +0000 (UTC) Date: Sat, 13 Dec 2025 23:38:50 +0100 From: Sam Ravnborg To: Swaraj Gaikwad Cc: Helge Deller , Andrew Morton , Hans Verkuil , Nicolas Dufresne , Frank Li , Zi Yan , Donet Tom , Yann Dirson , Konrad Dybcio , Vivek Kasireddy , Qianfeng Rong , Kees Cook , "open list:FRAMEBUFFER LAYER" , "open list:FRAMEBUFFER LAYER" , open list , skhan@linuxfoundation.org, david.hunter.linux@gmail.com Subject: Re: [PATCH v2] fbdev: arkfb: Request legacy VGA I/O region Message-ID: <20251213223850.GA419250@ravnborg.org> References: <20251213202239.8772-1-swarajgaikwad1925@gmail.com> Precedence: bulk X-Mailing-List: linux-fbdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20251213202239.8772-1-swarajgaikwad1925@gmail.com> Hi Swaraj, On Sat, Dec 13, 2025 at 08:22:34PM +0000, Swaraj Gaikwad wrote: > The arkfb driver uses the legacy VGA I/O range (0x3c0+) but does not > request it. This can cause conflicts with other drivers that try to > reserve these ports. > > Fix this by using devm_request_region() during the probe function. > This ensures the region is properly reserved and automatically released > on driver detach. > > v1: https://lore.kernel.org/lkml/20251213154937.104301-1-swarajgaikwad1925@gmail.com/ > Signed-off-by: Swaraj Gaikwad > --- > v2: > - Use resource_size(&vga_res) instead of hardcoded 64 * 1024. > - (Feedback from Kees Cook) > > Compile-tested only on x86_64. > > drivers/video/fbdev/arkfb.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/video/fbdev/arkfb.c b/drivers/video/fbdev/arkfb.c > index ec084323115f..24e4c20d1a32 100644 > --- a/drivers/video/fbdev/arkfb.c > +++ b/drivers/video/fbdev/arkfb.c > @@ -1018,6 +1018,12 @@ static int ark_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) > > pcibios_bus_to_resource(dev->bus, &vga_res, &bus_reg); > > + if (!devm_request_region(&dev->dev, vga_res.start, resource_size(&vga_res), "arkfb-vga")) { > + dev_err(info->device, "cannot reserve legacy VGA ports\n"); > + rc = -EBUSY; > + goto err_find_mode; > + } > + > par->state.vgabase = (void __iomem *) (unsigned long) vga_res.start; Any explanation why devm_request_region() is the right choice here? As per the line above vga_res.start is iomem, and I had expected to see devm_request_mem_region() used. I looked only briefly, so I may be wrong. Sam