diff mbox series

sched_stress: Use time_t instead of long for type

Message ID 20240506190348.1448707-1-raj.khem@gmail.com
State Accepted
Headers show
Series sched_stress: Use time_t instead of long for type | expand

Commit Message

Khem Raj May 6, 2024, 7:03 p.m. UTC
This ensures it works across different architectures
Fixes

| sched_driver.c:744:43: error: passing argument 1 of 'ctime' from incompatible pointer type [-Wincompatible-pointer-types]
|   744 |         printf("\nend time = %s\n", ctime(&end_time));
|       |                                           ^~~~~~~~~

With gcc-14

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 testcases/kernel/sched/sched_stress/sched_driver.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Petr Vorel May 6, 2024, 9 p.m. UTC | #1
Hi Khem,

> This ensures it works across different architectures
> Fixes

> | sched_driver.c:744:43: error: passing argument 1 of 'ctime' from incompatible pointer type [-Wincompatible-pointer-types]
> |   744 |         printf("\nend time = %s\n", ctime(&end_time));
> |       |                                           ^~~~~~~~~

> With gcc-14

This was actually problem on musl, right?

Anyway, thanks for the fix, merged.

Kind regards,
Petr
Khem Raj May 6, 2024, 11:15 p.m. UTC | #2
On Mon, May 6, 2024 at 2:00 PM Petr Vorel <pvorel@suse.cz> wrote:

> Hi Khem,
>
> > This ensures it works across different architectures
> > Fixes
>
> > | sched_driver.c:744:43: error: passing argument 1 of 'ctime' from
> incompatible pointer type [-Wincompatible-pointer-types]
> > |   744 |         printf("\nend time = %s\n", ctime(&end_time));
> > |       |                                           ^~~~~~~~~
>
> > With gcc-14
>
> This was actually problem on musl, right?


This is with 32 bit x86 using 64bit time_r this time :) we have umpteen
ways to build systems with yocto

>
>
> Anyway, thanks for the fix, merged.
>
> Kind regards,
> Petr
>
Petr Vorel May 7, 2024, 7:28 a.m. UTC | #3
> On Mon, May 6, 2024 at 2:00 PM Petr Vorel <pvorel@suse.cz> wrote:

> > Hi Khem,

> > > This ensures it works across different architectures
> > > Fixes

> > > | sched_driver.c:744:43: error: passing argument 1 of 'ctime' from
> > incompatible pointer type [-Wincompatible-pointer-types]
> > > |   744 |         printf("\nend time = %s\n", ctime(&end_time));
> > > |       |                                           ^~~~~~~~~

> > > With gcc-14

> > This was actually problem on musl, right?


> This is with 32 bit x86 using 64bit time_r this time :) we have umpteen
> ways to build systems with yocto

Thanks for info! I wonder if this is the only place where it's needed.

I'm not sure how much is sched_driver.c relevant nowadays. If yes,
it would be worth to at least fix other warnings, remove ia64 support and
#if 0.

Kind regards,
Petr

> > Anyway, thanks for the fix, merged.

> > Kind regards,
> > Petr
diff mbox series

Patch

diff --git a/testcases/kernel/sched/sched_stress/sched_driver.c b/testcases/kernel/sched/sched_stress/sched_driver.c
index 61573d788..5b8c187fe 100644
--- a/testcases/kernel/sched/sched_stress/sched_driver.c
+++ b/testcases/kernel/sched/sched_stress/sched_driver.c
@@ -136,7 +136,7 @@  int debug = 0;
 /*
  * Function prototypes
  */
-void startup(long);
+void startup(time_t);
 int start_testcase(char *, char *, char *, char *, char *, char *);
 int process_slots_in_use();
 int available_user_process_slots();
@@ -251,7 +251,7 @@  int main(int argc, char **argv)
  * information to the screen and .  It also initializes the	 *
  * process id list and other global variables.	 			 *
  *-----------------------------------------------------------------------*/
-void startup(long start_time)
+void startup(time_t start_time)
 {
 	char tempbuffer[50];	/* temporary buffer to hold names */
 
@@ -734,7 +734,7 @@  void kill_short_term_testcases()
 void finishup(start_time)
 long start_time;		/* starting time to calculate elapsed time */
 {
-	long end_time;		/* time when program finished */
+	time_t end_time;		/* time when program finished */
 
 	/*
 	 * Get the end time and calculate elapsed time; write all this out