LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Robin Murphy <robin.murphy@arm.com>
To: Ard Biesheuvel <ardb@kernel.org>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Christoph Hellwig <hch@infradead.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
	Linux ARM <linux-arm-kernel@lists.infradead.org>,
	Veronika kabatova <vkabatov@redhat.com>,
	Will Deacon <will@kernel.org>, Hanjun Guo <guohanjun@huawei.com>,
	Sudeep Holla <sudeep.holla@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>
Subject: Re: [PATCH v2 1/3] ACPI: osl: Add __force attribute in acpi_os_map_iomem() cast
Date: Mon, 16 Aug 2021 11:59:24 +0100	[thread overview]
Message-ID: <381418c8-5302-6991-b3aa-df6378dd1c64@arm.com> (raw)
In-Reply-To: <CAMj1kXHM8tG2f-i6u8Ohb0RV9XTqq2N1Oooz_Q2kvLpdfTMxqw@mail.gmail.com>

On 2021-08-16 11:21, Ard Biesheuvel wrote:
> On Mon, 16 Aug 2021 at 11:59, Lorenzo Pieralisi
> <lorenzo.pieralisi@arm.com> wrote:
>>
>> On Wed, Aug 11, 2021 at 03:55:08PM +0100, Lorenzo Pieralisi wrote:
>>> On Wed, Aug 11, 2021 at 03:08:24PM +0100, Christoph Hellwig wrote:
>>>> On Wed, Aug 11, 2021 at 12:40:28PM +0200, Ard Biesheuvel wrote:
>>>>> The whole problem we are solving here is that ACPI, being based on
>>>>> x86, conflates MMIO mappings with memory mappings, and has been using
>>>>> the same underlying infrastructure for either.
>>>>
>>>> So let's fix that problem instead of papering over it.
>>>
>>> Patch (3) in this series is a fix - I would ask whether it makes
>>> sense to merge patches (2-3) now and think about reworking the current
>>> ACPI IO/MEM mapping API later, it can be an invasive change for a fix,
>>> assuming we agree on how to rework the ACPI IO/MEM mapping API.
>>
>> What should we do then with this series ?
>>
> 
> It is not even clear that reworking the ACPI core is feasible to begin
> with, OTOH, fixing a sparse warning is arguably not a critical bug fix
> either, so I'd suggest we just drop that bit.

Indeed, the only way to truly fix the issue is to fire up the time 
machine and rewrite the ACPI and EFI specs to not define that tables and 
data may or may not be required to be mapped as Device memory depending 
on the whims of the firmware. Otherwise we're basically always going to 
have one or more casts *somewhere*, even if we were to play it safe and 
return everything as iomem instead.

I guess for read-only access to tables, the core code might be able to 
maintain a shadow copy of anything device-memory-mapped in normal memory 
and expose that instead, but if anything has to be writeable I'm not 
sure how we could abstract that "properly".

Robin.

  reply	other threads:[~2021-08-16 10:59 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-26 10:00 [PATCH] ACPI: Add memory semantics to acpi_os_map_memory() Lorenzo Pieralisi
2021-07-26 15:55 ` Ard Biesheuvel
2021-07-27 10:06   ` Lorenzo Pieralisi
2021-07-27 10:09     ` Ard Biesheuvel
2021-07-27 16:38       ` Lorenzo Pieralisi
2021-07-27  4:21 ` Hanjun Guo
2021-08-02 15:23 ` [PATCH v2 0/3] ACPI: Fix acpi_os_map_memory() memory semantics Lorenzo Pieralisi
2021-08-02 15:37   ` Ard Biesheuvel
2021-08-23 10:35   ` [PATCH v3] ACPI: Add memory semantics to acpi_os_map_memory() Lorenzo Pieralisi
2021-08-23 10:46   ` [PATCH RESEND " Lorenzo Pieralisi
2021-08-23 12:30     ` Catalin Marinas
2021-08-25 17:46       ` Rafael J. Wysocki
2021-08-02 15:23 ` [PATCH v2 1/3] ACPI: osl: Add __force attribute in acpi_os_map_iomem() cast Lorenzo Pieralisi
2021-08-10 16:45   ` Christoph Hellwig
2021-08-11 10:40     ` Ard Biesheuvel
2021-08-11 14:01       ` Lorenzo Pieralisi
2021-08-11 14:08       ` Christoph Hellwig
2021-08-11 14:55         ` Lorenzo Pieralisi
2021-08-16  9:58           ` Lorenzo Pieralisi
2021-08-16 10:21             ` Ard Biesheuvel
2021-08-16 10:59               ` Robin Murphy [this message]
2021-08-16 13:57               ` Rafael J. Wysocki
2021-08-02 15:23 ` [PATCH v2 2/3] ACPI: osl: Reorder acpi_os_map_iomem() __ref annotation Lorenzo Pieralisi
2021-08-02 15:23 ` [PATCH v2 3/3] ACPI: Add memory semantics to acpi_os_map_memory() Lorenzo Pieralisi
2021-08-02 16:46   ` Catalin Marinas
2021-08-03  9:16     ` Lorenzo Pieralisi
2021-08-05 19:02       ` Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=381418c8-5302-6991-b3aa-df6378dd1c64@arm.com \
    --to=robin.murphy@arm.com \
    --cc=ardb@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=guohanjun@huawei.com \
    --cc=hch@infradead.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=rjw@rjwysocki.net \
    --cc=sudeep.holla@arm.com \
    --cc=vkabatov@redhat.com \
    --cc=will@kernel.org \
    --subject='Re: [PATCH v2 1/3] ACPI: osl: Add __force attribute in acpi_os_map_iomem() cast' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).