[PATCH 8/8] pc-bios: s390x: Make u32 ptr check explicit

Janosch Frank posted 8 patches 5 years, 10 months ago
Maintainers: Thomas Huth <thuth@redhat.com>, Cornelia Huck <cohuck@redhat.com>, Christian Borntraeger <borntraeger@de.ibm.com>
There is a newer version of this series
[PATCH 8/8] pc-bios: s390x: Make u32 ptr check explicit
Posted by Janosch Frank 5 years, 10 months ago
Let's make it a bit more clear that we check the full 64 bits to fit
into the 32 we return.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Suggested-by: David Hildenbrand <david@redhat.com>
---
 pc-bios/s390-ccw/helper.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pc-bios/s390-ccw/helper.h b/pc-bios/s390-ccw/helper.h
index 78d5bc74421b4173..b4e83a7e5deaa9dc 100644
--- a/pc-bios/s390-ccw/helper.h
+++ b/pc-bios/s390-ccw/helper.h
@@ -18,7 +18,7 @@
 /* Avoids compiler warnings when casting a pointer to a u32 */
 static inline uint32_t ptr2u32(void *ptr)
 {
-    IPL_assert((uint64_t)ptr <= 0xffffffff, "ptr2u32: ptr too large");
+    IPL_assert((uint64_t)ptr <= 0xfffffffful, "ptr2u32: ptr too large");
     return (uint32_t)(uint64_t)ptr;
 }
 
-- 
2.25.1


Re: [PATCH 8/8] pc-bios: s390x: Make u32 ptr check explicit
Posted by David Hildenbrand 5 years, 9 months ago
On 24.03.20 16:08, Janosch Frank wrote:
> Let's make it a bit more clear that we check the full 64 bits to fit
> into the 32 we return.
> 
> Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
> Suggested-by: David Hildenbrand <david@redhat.com>
> ---
>  pc-bios/s390-ccw/helper.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/pc-bios/s390-ccw/helper.h b/pc-bios/s390-ccw/helper.h
> index 78d5bc74421b4173..b4e83a7e5deaa9dc 100644
> --- a/pc-bios/s390-ccw/helper.h
> +++ b/pc-bios/s390-ccw/helper.h
> @@ -18,7 +18,7 @@
>  /* Avoids compiler warnings when casting a pointer to a u32 */
>  static inline uint32_t ptr2u32(void *ptr)
>  {
> -    IPL_assert((uint64_t)ptr <= 0xffffffff, "ptr2u32: ptr too large");
> +    IPL_assert((uint64_t)ptr <= 0xfffffffful, "ptr2u32: ptr too large");

wonder if we should even do ull.

Reviewed-by: David Hildenbrand <david@redhat.com>

>      return (uint32_t)(uint64_t)ptr;
>  }
>  
> 


-- 
Thanks,

David / dhildenb