Re: [PATCH] x86: asm/io.h: Harden virt_to_phys/isa_virt_to_bus prototypes

From: Arnd Bergmann
Date: Sat Apr 22 2023 - 05:03:06 EST


On Fri, Apr 14, 2023, at 11:40, Stanislav Kinsburskii wrote:
> From: Stanislav Kinsburskii <stanislav.kinsburskii@xxxxxxxxx>
>
> These two helper functions - virt_to_phys and isa_virt_to_bus - don't need the
> address pointer to be mutable.
>
> In the same time expecting it to be mutable leads to the following build
> warning for constant pointers:
>
> warning: passing argument 1 of ‘virt_to_phys’ discards ‘const’
> qualifier from pointer target type
>

The change looks fine, and this is clearly useful for spreading
more 'const' annotations, but I have two concerns:

- I'd really like this to be done consistently across architectures,
so at least the asm-generic/io.h version should get the same
annotation, or ideally all of them in one patch.

- I would not describe this change itself as "hardening", as it
also does the opposite, when you have a pointer that is actually
"const" but converting it through virt_to_phys() and back
through phys_to_virt() ends up losing the annotation.

Arnd