[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240815215302.5ed29b99e94a48aea49269ce@linux-foundation.org>
Date: Thu, 15 Aug 2024 21:53:02 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Huang Ying <ying.huang@...el.com>
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
linux-cxl@...r.kernel.org, Dan Williams <dan.j.williams@...el.com>,
Davidlohr Bueso <dave@...olabs.net>, Jonathan Cameron
<jonathan.cameron@...wei.com>, Dave Jiang <dave.jiang@...el.com>, Alison
Schofield <alison.schofield@...el.com>, Vishal Verma
<vishal.l.verma@...el.com>, Ira Weiny <ira.weiny@...el.com>, Alistair
Popple <apopple@...dia.com>, Andy Shevchenko
<andriy.shevchenko@...ux.intel.com>, Bjorn Helgaas <bhelgaas@...gle.com>,
Baoquan He <bhe@...hat.com>
Subject: Re: [PATCH] Resource: fix region_intersects() for CXL memory
On Fri, 16 Aug 2024 10:07:23 +0800 Huang Ying <ying.huang@...el.com> wrote:
> On a system with CXL memory installed, the resource tree (/proc/iomem)
> related to CXL memory looks like something as follows.
>
> 490000000-50fffffff : CXL Window 0
> 490000000-50fffffff : region0
> 490000000-50fffffff : dax0.0
> 490000000-50fffffff : System RAM (kmem)
>
> When the following command line is run to try writing some memory in
> CXL memory range,
>
> $ dd if=data of=/dev/mem bs=1k seek=19136512 count=1
> dd: error writing '/dev/mem': Bad address
> 1+0 records in
> 0+0 records out
> 0 bytes copied, 0.0283507 s, 0.0 kB/s
>
> the command fails as expected. However, the error code is wrong. It
> should be "Operation not permitted" instead of "Bad address". And,
> the following warning is reported in kernel log.
>
> ioremap on RAM at 0x0000000490000000 - 0x0000000490000fff
> WARNING: CPU: 2 PID: 416 at arch/x86/mm/ioremap.c:216 __ioremap_caller.constprop.0+0x131/0x35d
> ...
>
Presumably we want to fix earlier kernels? If so, are you able to
identify a suitable Fixes: target? Possibly 974854ab0728 ("cxl/acpi:
Track CXL resources in iomem_resource")?
Powered by blists - more mailing lists