lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20260204062928.GI79272@liuwe-devbox-debian-v2.local>
Date: Wed, 4 Feb 2026 06:29:28 +0000
From: Wei Liu <wei.liu@...nel.org>
To: mhklinux@...look.com
Cc: kys@...rosoft.com, haiyangz@...rosoft.com, wei.liu@...nel.org,
	decui@...rosoft.com, longli@...rosoft.com,
	linux-hyperv@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/1] Drivers: hv: Use memremap()/memunmap() instead of
 ioremap_cache()/iounmap()

On Sun, Jan 18, 2026 at 07:34:35PM -0800, mhkelley58@...il.com wrote:
> From: Michael Kelley <mhklinux@...look.com>
> 
> When running with a paravisor or in the root partition, the SynIC event and
> message pages are provided by the paravisor or hypervisor respectively,
> instead of being allocated by Linux. The provided pages are normal memory,
> but are outside of the physical address space seen by Linux. As such they
> cannot be accessed via the kernel's direct map, and must be explicitly
> mapped to a kernel virtual address.
> 
> Current code uses ioremap_cache() and iounmap() to map and unmap the pages.
> These functions are for use on I/O address space that may not behave as
> normal memory, so they generate or expect addresses with the __iomem
> attribute. For normal memory, the preferred functions are memremap() and
> memunmap(), which operate similarly but without __iomem.
> 
> At the time of the original work on CoCo VMs on Hyper-V, memremap() did not
> support creating a decrypted mapping, so ioremap_cache() was used instead,
> since I/O address space is always mapped decrypted. memremap() has since
> been enhanced to allow decrypted mappings, so replace ioremap_cache() with
> memremap() when mapping the event and message pages. Similarly, replace
> iounmap() with memunmap(). As a side benefit, the replacement cleans up
> 'sparse' warnings about __iomem mismatches.
> 
> The replacement is done to use the correct functions as long-term goodness
> and to clean up the sparse warnings. No runtime bugs are fixed.
> 
> Reported-by: kernel test robot <lkp@...el.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202601170445.JtZQwndW-lkp@intel.com/
> Closes: https://lore.kernel.org/oe-kbuild-all/202512150359.fMdmbddk-lkp@intel.com/
> Signed-off-by: Michael Kelley <mhklinux@...look.com>

Applied to hyperv-next. Thanks.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ