[LTP] [PATCH] syscalls/fork03: Convert into new api

Yang Xu (Fujitsu) xuyang2018.jy@fujitsu.com
Sun Jun 25 16:48:18 CEST 2023


Hi Petr

> Hi Xu,
> 
> ...
>>   #include <sys/types.h>
> nit: I don't think this is needed
> 
>> +#include <unistd.h>
>>   #include <sys/wait.h>
>> -#include <stdio.h>
>> -#include "test.h"
> ...
>> +#include <stdlib.h>
>> +#include "tst_test.h"
> 
> ...
>> +	pid1 = SAFE_FORK();
>> +	if (!pid1) {
>> +		/* child uses some cpu time slices */
>> +		for (i = 1; i < 32767; i++) {
>> +			fl1 = 0.000001;
>> +			fl1 = fl2 = 0.000001;
>> +			fl1 = fl1 * 10.0;
>> +			fl2 = fl1 / 1.232323;
>> +			fl1 = fl2 - fl2;
>> +			fl1 = fl2;
>>   		}
>> +		if (!pid1)
>> +			exit(0);
>> +		else
>> +			exit(1);
> nit: maybe just
> exit(!!pid1);
> 
> Reviewed-by: Petr Vorel <pvorel@suse.cz>
> 
> I suggest further tiny space cleanups.

Yes, merge with tiny space cleanups.

Best Regards
Yang Xu
> 
> You can download it or use diff below.
> https://github.com/pevik/ltp/raw/4788c24a97c2f0885a2da3a8930f27d2f15f93d3/testcases/kernel/syscalls/fork/fork03.c
> 
> Kind regards,
> Petr
> 
> diff --git testcases/kernel/syscalls/fork/fork03.c testcases/kernel/syscalls/fork/fork03.c
> index 072f12797..9f04c113b 100644
> --- testcases/kernel/syscalls/fork/fork03.c
> +++ testcases/kernel/syscalls/fork/fork03.c
> @@ -1,20 +1,18 @@
>   // SPDX-License-Identifier: GPL-2.0-or-later
>   /*
>    * Copyright (c) International Business Machines Corp., 2001
> - *
> - * AUTHOR
> - *      07/2001 Ported by Wayne Boyer
> + * Copyright (c) Linux Test Project, 2003-2023
> + * Author: 2001 Ported by Wayne Boyer
>    */
>   
>   /*\
>    *[Description]
>    *
>    * Check that child process can use a large text space and do a large number
> - * of operations. In this situation, Check for pid == 0 in child and check
> - * for pid > 0 in parent after wait.
> + * of operations. In this situation, check for PID == 0 in child and check
> + * for PID > 0 in parent after wait.
>    */
>   
> -#include <sys/types.h>
>   #include <unistd.h>
>   #include <sys/wait.h>
>   #include <stdlib.h>
> @@ -36,22 +34,23 @@ static void verify_fork(void)
>   			fl1 = fl2 - fl2;
>   			fl1 = fl2;
>   		}
> -		if (!pid1)
> -			exit(0);
> -		else
> -			exit(1);
> +
> +		exit(!!pid1);
>   	}
>   
> -	tst_res(TINFO, "process id in parent of child from fork : %d", pid1);
> +	tst_res(TINFO, "process id in parent of child from fork: %d", pid1);
>   	pid2 = SAFE_WAIT(&status);
> +
>   	if (pid1 != pid2) {
> -		tst_res(TFAIL, "pids don't match : %d vs %d", pid1, pid2);
> +		tst_res(TFAIL, "pids don't match: %d vs %d", pid1, pid2);
>   		return;
>   	}
> +
>   	if ((status >> 8) != 0) {
>   		tst_res(TFAIL, "child exited with failure");
>   		return;
>   	}
> +
>   	tst_res(TPASS, "test PASSED");
>   }
>   


More information about the ltp mailing list