[PATCH] iosys_map: Make dst a const in iosys_map_memcpy_to()

Lyude Paul posted 1 patch 3 months, 3 weeks ago
include/linux/iosys-map.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] iosys_map: Make dst a const in iosys_map_memcpy_to()
Posted by Lyude Paul 3 months, 3 weeks ago
A drive-by fix I discovered when writing up bindings for iosys_mem for
rust: while iosys_map_memcpy_to() does modify the memory pointed to by the
iosys_map, it doesn't modify the actual iosys_map struct at all.

As such, let's add a const qualifier to this function.

Signed-off-by: Lyude Paul <lyude@redhat.com>
---
 include/linux/iosys-map.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/iosys-map.h b/include/linux/iosys-map.h
index 3e85afe794c0a..0ececbba04b3a 100644
--- a/include/linux/iosys-map.h
+++ b/include/linux/iosys-map.h
@@ -278,7 +278,7 @@ static inline void iosys_map_clear(struct iosys_map *map)
  * system memory. Depending on the buffer's location, the helper picks the
  * correct method of accessing the memory.
  */
-static inline void iosys_map_memcpy_to(struct iosys_map *dst, size_t dst_offset,
+static inline void iosys_map_memcpy_to(const struct iosys_map *dst, size_t dst_offset,
 				       const void *src, size_t len)
 {
 	if (dst->is_iomem)

base-commit: 3a8660878839faadb4f1a6dd72c3179c1df56787
-- 
2.51.0
Re: [PATCH] iosys_map: Make dst a const in iosys_map_memcpy_to()
Posted by Thomas Zimmermann 3 months, 3 weeks ago
Hi

Am 16.10.25 um 22:24 schrieb Lyude Paul:
> A drive-by fix I discovered when writing up bindings for iosys_mem for
> rust: while iosys_map_memcpy_to() does modify the memory pointed to by the
> iosys_map, it doesn't modify the actual iosys_map struct at all.
>
> As such, let's add a const qualifier to this function.

As far as I'm concerned, the non-const is intentional. Because it's the 
destination, so expect it to be written. Thus passing arguments that are 
already const is most likely an error. And because I'd like to keep the 
option of doing something more complicated within iosys_map (e.g., some 
temp memory for handling I/O) and const might get in the way.

Best regads
Thomas

>
> Signed-off-by: Lyude Paul <lyude@redhat.com>
> ---
>   include/linux/iosys-map.h | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/iosys-map.h b/include/linux/iosys-map.h
> index 3e85afe794c0a..0ececbba04b3a 100644
> --- a/include/linux/iosys-map.h
> +++ b/include/linux/iosys-map.h
> @@ -278,7 +278,7 @@ static inline void iosys_map_clear(struct iosys_map *map)
>    * system memory. Depending on the buffer's location, the helper picks the
>    * correct method of accessing the memory.
>    */
> -static inline void iosys_map_memcpy_to(struct iosys_map *dst, size_t dst_offset,
> +static inline void iosys_map_memcpy_to(const struct iosys_map *dst, size_t dst_offset,
>   				       const void *src, size_t len)
>   {
>   	if (dst->is_iomem)
>
> base-commit: 3a8660878839faadb4f1a6dd72c3179c1df56787

-- 
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)