From f3a32668c2f2ae5b0496c2265df673adb1a47d6b Mon Sep 17 00:00:00 2001 From: DL1YCF Date: Sat, 7 Nov 2020 11:56:05 +0100 Subject: [PATCH] rigctl.c: removed unused mutex'es --- rigctl.c | 84 ++++++++++++++++++++++++++------------------------------ 1 file changed, 39 insertions(+), 45 deletions(-) diff --git a/rigctl.c b/rigctl.c index a72add2..51a8c5a 100644 --- a/rigctl.c +++ b/rigctl.c @@ -93,13 +93,9 @@ int cat_control; extern int enable_tx_equalizer; typedef struct {GMutex m; } GT_MUTEX; -GT_MUTEX * mutex_a; -GT_MUTEX * mutex_b; -GT_MUTEX * mutex_c; -GT_MUTEX * mutex_busy; - -int mutex_b_exists = 0; +GT_MUTEX * mutex_a; // implements atomic updates of cat_control +GT_MUTEX * mutex_busy; // un-necessary lock in serial thread FILE * out; int output; @@ -611,7 +607,9 @@ static gpointer rigctl_server(gpointer data) { while(server_running) { int spare; - // find a spare thread + // + // find a spare slot + // spare = -1; for(i=0;ifd!=-1) { g_print("setting SO_LINGER to 0 for client_socket: %d\n",client->fd); struct linger linger = { 0 }; @@ -694,13 +712,13 @@ g_print("RIGCTL: Leaving rigctl_client thread\n"); } close(client->fd); client->fd=-1; - // Decrement CAT_CONTROL - g_mutex_lock(&mutex_a->m); - cat_control--; - if(rigctl_debug) g_print("RIGCTL: CTLA DEC - cat_control=%d\n",cat_control); - g_mutex_unlock(&mutex_a->m); - g_idle_add(ext_vfo_update,NULL); } + // Decrement CAT_CONTROL + g_mutex_lock(&mutex_a->m); + cat_control--; + if(rigctl_debug) g_print("RIGCTL: CTLA DEC - cat_control=%d\n",cat_control); + g_mutex_unlock(&mutex_a->m); + g_idle_add(ext_vfo_update,NULL); return NULL; } @@ -3966,11 +3984,6 @@ static gpointer serial_server(gpointer data) { int launch_serial () { int fd; g_print("RIGCTL: Launch Serial port %s\n",ser_port); - if(mutex_b_exists == 0) { - mutex_b = g_new(GT_MUTEX,1); - g_mutex_init(&mutex_b->m); - mutex_b_exists = 1; - } if(mutex_busy==NULL) { mutex_busy = g_new(GT_MUTEX,1); @@ -3994,13 +4007,6 @@ int launch_serial () { serial_client->fd=fd; serial_server_thread_id = g_thread_new( "Serial server", serial_server, serial_client); - if(!serial_server_thread_id ) - { - // NOTREACHED, since program aborts if g_thread_new fails - g_free(serial_client); - g_print("g_thread_new failed on serial_server\n"); - return 0; - } return 1; } @@ -4024,22 +4030,10 @@ void launch_rigctl () { g_print( "LAUNCHING RIGCTL!!\n"); rigctl_busy = 1; - mutex_a = g_new(GT_MUTEX,1); + cat_control = 0; + mutex_a = g_new(GT_MUTEX,1); // memory leak g_mutex_init(&mutex_a->m); - if(mutex_b_exists == 0) { - mutex_b = g_new(GT_MUTEX,1); - g_mutex_init(&mutex_b->m); - mutex_b_exists = 1; - } - - mutex_c = g_new(GT_MUTEX,1); - g_mutex_init(&mutex_c->m); - - mutex_busy = g_new(GT_MUTEX,1); -g_print("launch_rigctl: mutex_busy=%p\n",mutex_busy); - g_mutex_init(&mutex_busy->m); - // This routine encapsulates the thread call rigctl_server_thread_id = g_thread_new( "rigctl server", rigctl_server, GINT_TO_POINTER(rigctl_port_base)); if( ! rigctl_server_thread_id ) -- 2.45.2