[PATCH] linux-user/syscall.c: malloc to g_try_malloc

Ahmed Abouzied posted 1 patch 2 years, 2 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20220104143841.25116-1-email@aabouzied.com
Maintainers: Laurent Vivier <laurent@vivier.eu>
linux-user/syscall.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] linux-user/syscall.c: malloc to g_try_malloc
Posted by Ahmed Abouzied 2 years, 2 months ago
Use g_try_malloc instead of malloc to alocate the target ifconfig.
Also replace the corresponding free with g_free.

Signed-off-by: Ahmed Abouzied <email@aabouzied.com>
---

Hello, 

I noticed that there was a `malloc` call in this file. It seems that it
was added by the commit 22e4a267 (3 years ago) which was after the commit
0e173b24 (6 years ago) that replaced malloc calls with glib alternative calls.

There is no issue for this on Gitlab. Should I have created an issue
first? 

Best regards,

 linux-user/syscall.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 56a3e17183..715f9430e1 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -4867,7 +4867,7 @@ static abi_long do_ioctl_ifconf(const IOCTLEntry *ie, uint8_t *buf_temp,
              * We can't fit all the extents into the fixed size buffer.
              * Allocate one that is large enough and use it instead.
              */
-            host_ifconf = malloc(outbufsz);
+            host_ifconf = g_try_malloc(outbufsz);
             if (!host_ifconf) {
                 return -TARGET_ENOMEM;
             }
@@ -4915,7 +4915,7 @@ static abi_long do_ioctl_ifconf(const IOCTLEntry *ie, uint8_t *buf_temp,
     }
 
     if (free_buf) {
-        free(host_ifconf);
+        g_free(host_ifconf);
     }
 
     return ret;
-- 
2.25.1


Re: [PATCH] linux-user/syscall.c: malloc to g_try_malloc
Posted by Laurent Vivier 2 years, 2 months ago
Le 04/01/2022 à 15:38, Ahmed Abouzied a écrit :
> Use g_try_malloc instead of malloc to alocate the target ifconfig.
> Also replace the corresponding free with g_free.
> 
> Signed-off-by: Ahmed Abouzied <email@aabouzied.com>
> ---
> 
> Hello,
> 
> I noticed that there was a `malloc` call in this file. It seems that it
> was added by the commit 22e4a267 (3 years ago) which was after the commit
> 0e173b24 (6 years ago) that replaced malloc calls with glib alternative calls.
> 
> There is no issue for this on Gitlab. Should I have created an issue
> first?
> 
> Best regards,
> 
>   linux-user/syscall.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 56a3e17183..715f9430e1 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -4867,7 +4867,7 @@ static abi_long do_ioctl_ifconf(const IOCTLEntry *ie, uint8_t *buf_temp,
>                * We can't fit all the extents into the fixed size buffer.
>                * Allocate one that is large enough and use it instead.
>                */
> -            host_ifconf = malloc(outbufsz);
> +            host_ifconf = g_try_malloc(outbufsz);
>               if (!host_ifconf) {
>                   return -TARGET_ENOMEM;
>               }
> @@ -4915,7 +4915,7 @@ static abi_long do_ioctl_ifconf(const IOCTLEntry *ie, uint8_t *buf_temp,
>       }
>   
>       if (free_buf) {
> -        free(host_ifconf);
> +        g_free(host_ifconf);
>       }
>   
>       return ret;

Applied to my linux-user-for-7.0 branch.

Thanks,
Laurent