tests/tcg/multiarch/linux-test: Fix error check for shmat

Message ID 20180709014953.26230-1-richard.henderson@linaro.org
State Superseded
Headers show
Series
  • tests/tcg/multiarch/linux-test: Fix error check for shmat
Related show

Commit Message

Richard Henderson July 9, 2018, 1:49 a.m.
The error indicator for this syscall is -1, not 0.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

---
 tests/tcg/multiarch/linux-test.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

-- 
2.17.1

Comments

Richard Henderson Jan. 29, 2019, 6:43 p.m. | #1
Ping.

On 7/8/18 6:49 PM, Richard Henderson wrote:
> The error indicator for this syscall is -1, not 0.

> 

> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

> ---

>  tests/tcg/multiarch/linux-test.c | 3 ++-

>  1 file changed, 2 insertions(+), 1 deletion(-)

> 

> diff --git a/tests/tcg/multiarch/linux-test.c b/tests/tcg/multiarch/linux-test.c

> index e80eccc0ce..6d2c02c5c0 100644

> --- a/tests/tcg/multiarch/linux-test.c

> +++ b/tests/tcg/multiarch/linux-test.c

> @@ -503,8 +503,9 @@ static void test_shm(void)

>  

>      shmid = chk_error(shmget(IPC_PRIVATE, SHM_SIZE, IPC_CREAT | 0777));

>      ptr = shmat(shmid, NULL, 0);

> -    if (!ptr)

> +    if (ptr == (void *)-1) {

>          error("shmat");

> +    }

>  

>      memset(ptr, 0, SHM_SIZE);

>  

>
Emilio G. Cota Jan. 29, 2019, 7:34 p.m. | #2
On Sun, Jul 08, 2018 at 18:49:53 -0700, Richard Henderson wrote:
> The error indicator for this syscall is -1, not 0.

> 

> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


Reviewed-by: Emilio G. Cota <cota@braap.org>


		E.

Patch

diff --git a/tests/tcg/multiarch/linux-test.c b/tests/tcg/multiarch/linux-test.c
index e80eccc0ce..6d2c02c5c0 100644
--- a/tests/tcg/multiarch/linux-test.c
+++ b/tests/tcg/multiarch/linux-test.c
@@ -503,8 +503,9 @@  static void test_shm(void)
 
     shmid = chk_error(shmget(IPC_PRIVATE, SHM_SIZE, IPC_CREAT | 0777));
     ptr = shmat(shmid, NULL, 0);
-    if (!ptr)
+    if (ptr == (void *)-1) {
         error("shmat");
+    }
 
     memset(ptr, 0, SHM_SIZE);