From: gowrishankar <[email protected]> Instead of lock/unlock of mutex to burn cpu cycles, we can use busy_work_ms from librttest which is more explicit (burn cycles, not provide some synchronization).
Also this patch removes the id increment since it is not used. Signed-off-by: Gowrishankar <[email protected]> Tested-by: Gowrishankar <[email protected]> Acked-by: John Stultz <[email protected]> Acked-by: Darren Hart <[email protected]> --- testcases/realtime/func/pi-tests/testpi-1.c | 24 ++++++------------------ testcases/realtime/func/pi-tests/testpi-2.c | 24 ++++++------------------ 2 files changed, 12 insertions(+), 36 deletions(-) diff --git a/testcases/realtime/func/pi-tests/testpi-1.c b/testcases/realtime/func/pi-tests/testpi-1.c index 25541d7..71b01ec 100644 --- a/testcases/realtime/func/pi-tests/testpi-1.c +++ b/testcases/realtime/func/pi-tests/testpi-1.c @@ -81,7 +81,7 @@ pthread_mutex_t glob_mutex; void *func_nonrt(void *arg) { struct thread *pthr = (struct thread *)arg; - int i, j, tid = gettid(); + int i, tid = gettid(); printf("Thread %d started running with priority %d\n", tid,\ pthr->priority); @@ -97,11 +97,7 @@ void *func_nonrt(void *arg) tid, i, pthr->policy, pthr->priority); fflush(NULL); } - pthr->id++; - for (j = 0; j < 5000; j++) { - pthread_mutex_lock(&(pthr->mutex)); - pthread_mutex_unlock(&(pthr->mutex)); - } + busy_work_ms(1); } pthread_mutex_unlock(&glob_mutex); return NULL; @@ -110,7 +106,7 @@ void *func_nonrt(void *arg) void *func_rt(void *arg) { struct thread *pthr = (struct thread *)arg; - int i, j, tid = gettid(); + int i, tid = gettid(); printf("Thread %d started running with prio %d\n", tid, pthr->priority); pthread_barrier_wait(&barrier); @@ -129,11 +125,7 @@ void *func_rt(void *arg) tid, i, pthr->policy, pthr->priority); fflush(NULL); } - pthr->id++; - for (j = 0; j < 5000; j++) { - pthread_mutex_lock(&(pthr->mutex)); - pthread_mutex_unlock(&(pthr->mutex)); - } + busy_work_ms(1); } pthread_mutex_unlock(&glob_mutex); return NULL; @@ -142,7 +134,7 @@ void *func_rt(void *arg) void *func_noise(void *arg) { struct thread *pthr = (struct thread *)arg; - int i, j, tid = gettid(); + int i, tid = gettid(); printf("Noise Thread %d started running with prio %d\n", tid, pthr->priority); @@ -155,11 +147,7 @@ void *func_noise(void *arg) pthr->priority); fflush(NULL); } - pthr->id++; - for (j = 0; j < 5000; j++) { - pthread_mutex_lock(&(pthr->mutex)); - pthread_mutex_unlock(&(pthr->mutex)); - } + busy_work_ms(1); } return NULL; } diff --git a/testcases/realtime/func/pi-tests/testpi-2.c b/testcases/realtime/func/pi-tests/testpi-2.c index eb00129..68dde44 100644 --- a/testcases/realtime/func/pi-tests/testpi-2.c +++ b/testcases/realtime/func/pi-tests/testpi-2.c @@ -83,7 +83,7 @@ pthread_mutex_t glob_mutex; void *func_lowrt(void *arg) { struct thread *pthr = (struct thread *)arg; - int i, j, tid = gettid(); + int i, tid = gettid(); printf("Thread %d started running with priority %d\n", tid,\ pthr->priority); @@ -99,11 +99,7 @@ void *func_lowrt(void *arg) tid, i, pthr->policy, pthr->priority); fflush(NULL); } - pthr->id++; - for (j = 0; j < 5000; j++) { - pthread_mutex_lock(&(pthr->mutex)); - pthread_mutex_unlock(&(pthr->mutex)); - } + busy_work_ms(1); } pthread_mutex_unlock(&glob_mutex); return NULL; @@ -112,7 +108,7 @@ void *func_lowrt(void *arg) void *func_rt(void *arg) { struct thread *pthr = (struct thread *)arg; - int i, j, tid = gettid(); + int i, tid = gettid(); printf("Thread %d started running with prio %d\n", tid, pthr->priority); pthread_barrier_wait(&barrier); @@ -131,11 +127,7 @@ void *func_rt(void *arg) tid, i, pthr->policy, pthr->priority); fflush(NULL); } - pthr->id++; - for (j = 0; j < 5000; j++) { - pthread_mutex_lock(&(pthr->mutex)); - pthread_mutex_unlock(&(pthr->mutex)); - } + busy_work_ms(1); } pthread_mutex_unlock(&glob_mutex); return NULL; @@ -144,7 +136,7 @@ void *func_rt(void *arg) void *func_noise(void *arg) { struct thread *pthr = (struct thread *)arg; - int i, j, tid = gettid(); + int i, tid = gettid(); printf("Noise Thread %d started running with prio %d\n", tid,\ pthr->priority); @@ -157,11 +149,7 @@ void *func_noise(void *arg) pthr->priority); fflush(NULL); } - pthr->id++; - for (j = 0; j < 5000; j++) { - pthread_mutex_lock(&(pthr->mutex)); - pthread_mutex_unlock(&(pthr->mutex)); - } + busy_work_ms(1); } return NULL; } -- 1.7.1 ------------------------------------------------------------------------------ _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
