"size_t" should be an unsigned type according to the C standard.
Thus we should also use this convention in the s390-ccw firmware to avoid
confusion. I checked the sources, and apart from one spot in libc.c, the
code should all be fine with this change.
Buglink: https://bugs.launchpad.net/qemu/+bug/1753437
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
v2: Use long instead of ssize_t in uitoa()
pc-bios/s390-ccw/libc.c | 2 +-
pc-bios/s390-ccw/libc.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pc-bios/s390-ccw/libc.c b/pc-bios/s390-ccw/libc.c
index 38ea77d..a786566 100644
--- a/pc-bios/s390-ccw/libc.c
+++ b/pc-bios/s390-ccw/libc.c
@@ -63,7 +63,7 @@ uint64_t atoui(const char *str)
*/
char *uitoa(uint64_t num, char *str, size_t len)
{
- size_t num_idx = 1; /* account for NUL */
+ long num_idx = 1; /* account for NUL */
uint64_t tmp = num;
IPL_assert(str != NULL, "uitoa: no space allocated to store string");
diff --git a/pc-bios/s390-ccw/libc.h b/pc-bios/s390-ccw/libc.h
index 63ece70..818517f 100644
--- a/pc-bios/s390-ccw/libc.h
+++ b/pc-bios/s390-ccw/libc.h
@@ -12,7 +12,7 @@
#ifndef S390_CCW_LIBC_H
#define S390_CCW_LIBC_H
-typedef long size_t;
+typedef unsigned long size_t;
typedef int bool;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
--
1.8.3.1
On 04/16/2018 09:45 AM, Thomas Huth wrote:
> "size_t" should be an unsigned type according to the C standard.
> Thus we should also use this convention in the s390-ccw firmware to avoid
> confusion. I checked the sources, and apart from one spot in libc.c, the
> code should all be fine with this change.
>
> Buglink: https://bugs.launchpad.net/qemu/+bug/1753437
> Signed-off-by: Thomas Huth <thuth@redhat.com>
looks better. I checked all users of size_t and this seems complete.
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
> ---
> v2: Use long instead of ssize_t in uitoa()
>
> pc-bios/s390-ccw/libc.c | 2 +-
> pc-bios/s390-ccw/libc.h | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/pc-bios/s390-ccw/libc.c b/pc-bios/s390-ccw/libc.c
> index 38ea77d..a786566 100644
> --- a/pc-bios/s390-ccw/libc.c
> +++ b/pc-bios/s390-ccw/libc.c
> @@ -63,7 +63,7 @@ uint64_t atoui(const char *str)
> */
> char *uitoa(uint64_t num, char *str, size_t len)
> {
> - size_t num_idx = 1; /* account for NUL */
> + long num_idx = 1; /* account for NUL */
> uint64_t tmp = num;
>
> IPL_assert(str != NULL, "uitoa: no space allocated to store string");
> diff --git a/pc-bios/s390-ccw/libc.h b/pc-bios/s390-ccw/libc.h
> index 63ece70..818517f 100644
> --- a/pc-bios/s390-ccw/libc.h
> +++ b/pc-bios/s390-ccw/libc.h
> @@ -12,7 +12,7 @@
> #ifndef S390_CCW_LIBC_H
> #define S390_CCW_LIBC_H
>
> -typedef long size_t;
> +typedef unsigned long size_t;
> typedef int bool;
> typedef unsigned char uint8_t;
> typedef unsigned short uint16_t;
>
On 04/16/2018 09:45 AM, Thomas Huth wrote: > "size_t" should be an unsigned type according to the C standard. > Thus we should also use this convention in the s390-ccw firmware to avoid > confusion. I checked the sources, and apart from one spot in libc.c, the > code should all be fine with this change. > > Buglink: https://bugs.launchpad.net/qemu/+bug/1753437 > Signed-off-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Halil Pasic <pasic@linux.vnet.ibm.com>
On 04/16/2018 03:45 AM, Thomas Huth wrote:
> "size_t" should be an unsigned type according to the C standard.
> Thus we should also use this convention in the s390-ccw firmware to avoid
> confusion. I checked the sources, and apart from one spot in libc.c, the
> code should all be fine with this change.
>
> Buglink: https://bugs.launchpad.net/qemu/+bug/1753437
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> v2: Use long instead of ssize_t in uitoa()
>
> pc-bios/s390-ccw/libc.c | 2 +-
> pc-bios/s390-ccw/libc.h | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/pc-bios/s390-ccw/libc.c b/pc-bios/s390-ccw/libc.c
> index 38ea77d..a786566 100644
> --- a/pc-bios/s390-ccw/libc.c
> +++ b/pc-bios/s390-ccw/libc.c
> @@ -63,7 +63,7 @@ uint64_t atoui(const char *str)
> */
> char *uitoa(uint64_t num, char *str, size_t len)
> {
> - size_t num_idx = 1; /* account for NUL */
> + long num_idx = 1; /* account for NUL */
> uint64_t tmp = num;
>
> IPL_assert(str != NULL, "uitoa: no space allocated to store string");
> diff --git a/pc-bios/s390-ccw/libc.h b/pc-bios/s390-ccw/libc.h
> index 63ece70..818517f 100644
> --- a/pc-bios/s390-ccw/libc.h
> +++ b/pc-bios/s390-ccw/libc.h
> @@ -12,7 +12,7 @@
> #ifndef S390_CCW_LIBC_H
> #define S390_CCW_LIBC_H
>
> -typedef long size_t;
> +typedef unsigned long size_t;
> typedef int bool;
> typedef unsigned char uint8_t;
> typedef unsigned short uint16_t;
>
Reviewed-by: Collin Walling <walling@linux.ibm.com>
--
Respectfully,
- Collin Walling
On Mon, 16 Apr 2018 09:45:20 +0200 Thomas Huth <thuth@redhat.com> wrote: > "size_t" should be an unsigned type according to the C standard. > Thus we should also use this convention in the s390-ccw firmware to avoid > confusion. I checked the sources, and apart from one spot in libc.c, the > code should all be fine with this change. > > Buglink: https://bugs.launchpad.net/qemu/+bug/1753437 > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > v2: Use long instead of ssize_t in uitoa() > > pc-bios/s390-ccw/libc.c | 2 +- > pc-bios/s390-ccw/libc.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) Reviewed-by: Cornelia Huck <cohuck@redhat.com> I assume you'll queue this one yourself?
On 23.04.2018 12:08, Cornelia Huck wrote: > On Mon, 16 Apr 2018 09:45:20 +0200 > Thomas Huth <thuth@redhat.com> wrote: > >> "size_t" should be an unsigned type according to the C standard. >> Thus we should also use this convention in the s390-ccw firmware to avoid >> confusion. I checked the sources, and apart from one spot in libc.c, the >> code should all be fine with this change. >> >> Buglink: https://bugs.launchpad.net/qemu/+bug/1753437 >> Signed-off-by: Thomas Huth <thuth@redhat.com> >> --- >> v2: Use long instead of ssize_t in uitoa() >> >> pc-bios/s390-ccw/libc.c | 2 +- >> pc-bios/s390-ccw/libc.h | 2 +- >> 2 files changed, 2 insertions(+), 2 deletions(-) > > Reviewed-by: Cornelia Huck <cohuck@redhat.com> > > I assume you'll queue this one yourself? Yes, I'll queue it with the other pending s390-ccw bios patches. Thomas
© 2016 - 2026 Red Hat, Inc.