From 7eede4ce7bfd70fb17f341028148154cc472365e Mon Sep 17 00:00:00 2001 From: joq Date: Mon, 27 Dec 2004 02:05:31 +0000 Subject: [PATCH] clean up OSX compile warnings git-svn-id: svn+ssh://jackaudio.org/trunk/jack@854 0c269be4-1314-0410-8aa9-9f06e86f4224 --- jackd/clientengine.c | 10 ++--- jackd/clientengine.h | 20 +++++---- jackd/engine.c | 99 ++++++++++++++++++++++---------------------- 3 files changed, 66 insertions(+), 63 deletions(-) diff --git a/jackd/clientengine.c b/jackd/clientengine.c index babe268..37d53e7 100644 --- a/jackd/clientengine.c +++ b/jackd/clientengine.c @@ -190,9 +190,7 @@ jack_remove_clients (jack_engine_t* engine) "client %s state = %s errors" " = %d\n", client->control->name, - client_state_names[ - client->control->state - ], + jack_client_state_name (client), client->error); jack_remove_client (engine, (jack_client_internal_t *) @@ -202,9 +200,7 @@ jack_remove_clients (jack_engine_t* engine) "client %s state = %s errors" " = %d\n", client->control->name, - client_state_names[ - client->control->state - ], + jack_client_state_name (client), client->error); jack_zombify_client (engine, (jack_client_internal_t *) @@ -827,7 +823,7 @@ jack_client_disconnect (jack_engine_t *engine, int fd) if (client) { VERBOSE (engine, "removing disconnected client %s state = " "%s errors = %d\n", client->control->name, - client_state_names[client->control->state], + jack_client_state_name (client), client->error); jack_remove_client(engine, client); jack_sort_graph (engine); diff --git a/jackd/clientengine.h b/jackd/clientengine.h index 9d11662..c57bed2 100644 --- a/jackd/clientengine.h +++ b/jackd/clientengine.h @@ -19,13 +19,6 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -static char *client_state_names[] = { - "Not triggered", - "Triggered", - "Running", - "Finished" -}; - static inline int jack_client_is_internal (jack_client_internal_t *client) { @@ -33,6 +26,19 @@ jack_client_is_internal (jack_client_internal_t *client) (client->control->type == ClientDriver); } +static inline char * +jack_client_state_name (jack_client_internal_t *client) +{ + static char *client_state_names[] = { + "Not triggered", + "Triggered", + "Running", + "Finished" + }; + + return client_state_names[client->control->state]; +} + int jack_client_activate (jack_engine_t *engine, jack_client_id_t id); int jack_client_deactivate (jack_engine_t *engine, jack_client_id_t id); int jack_client_create (jack_engine_t *engine, int client_fd); diff --git a/jackd/engine.c b/jackd/engine.c index 0278da4..e75eba5 100644 --- a/jackd/engine.c +++ b/jackd/engine.c @@ -116,7 +116,6 @@ static void jack_engine_delay (jack_engine_t *engine, static void jack_engine_driver_exit (jack_engine_t* engine); static int jack_start_freewheeling (jack_engine_t* engine); static int jack_stop_freewheeling (jack_engine_t* engine); -static int jack_start_watchdog (jack_engine_t *engine); static int jack_client_feeds_transitive (jack_client_internal_t *source, jack_client_internal_t *dest); static int jack_client_sort (jack_client_internal_t *a, @@ -689,7 +688,7 @@ jack_process_external(jack_engine_t *engine, JSList *node) "(subgraph_wait_fd=%d, status = %d, state = %s)", client->control->name, client->subgraph_wait_fd, status, - client_state_names[client->control->state]); + jack_client_state_name (client)); status = 1; } @@ -892,6 +891,55 @@ jack_engine_post_process (jack_engine_t *engine) jack_calc_cpu_load (engine); } +#ifndef JACK_USE_MACH_THREADS +static void * +jack_watchdog_thread (void *arg) +{ + jack_engine_t *engine = (jack_engine_t *) arg; + + engine->watchdog_check = 0; + + while (1) { + sleep (5); + if ( engine->watchdog_check == 0) { + + jack_error ("jackd watchdog: timeout - killing jackd"); + + /* Kill the current client's process group. */ + if (engine->current_client) { + kill (-engine->current_client-> + control->pgrp, SIGKILL); + } + + /* kill our process group, try to get a dump */ + kill (-getpgrp(), SIGABRT); + /*NOTREACHED*/ + exit (1); + } + engine->watchdog_check = 0; + } +} + +static int +jack_start_watchdog (jack_engine_t *engine) +{ + int watchdog_priority = engine->rtpriority + 10; + int max_priority = sched_get_priority_max (SCHED_FIFO); + + if ((max_priority != -1) && + (max_priority < watchdog_priority)) + watchdog_priority = max_priority; + + if (jack_create_thread (&engine->watchdog_thread, watchdog_priority, + TRUE, jack_watchdog_thread, engine)) { + jack_error ("cannot start watchdog thread"); + return -1; + } + + return 0; +} +#endif /* !JACK_USE_MACH_THREADS */ + static jack_driver_info_t * jack_load_driver (jack_engine_t *engine, jack_driver_desc_t * driver_desc) { @@ -1714,53 +1762,6 @@ jack_engine_new (int realtime, int rtpriority, int do_mlock, int do_unlock, return engine; } -static void * -jack_watchdog_thread (void *arg) -{ - jack_engine_t *engine = (jack_engine_t *) arg; - - engine->watchdog_check = 0; - - while (1) { - sleep (5); - if ( engine->watchdog_check == 0) { - - jack_error ("jackd watchdog: timeout - killing jackd"); - - /* Kill the current client's process group. */ - if (engine->current_client) { - kill (-engine->current_client-> - control->pgrp, SIGKILL); - } - - /* kill our process group, try to get a dump */ - kill (-getpgrp(), SIGABRT); - /*NOTREACHED*/ - exit (1); - } - engine->watchdog_check = 0; - } -} - -static int -jack_start_watchdog (jack_engine_t *engine) -{ - int watchdog_priority = engine->rtpriority + 10; - int max_priority = sched_get_priority_max (SCHED_FIFO); - - if ((max_priority != -1) && - (max_priority < watchdog_priority)) - watchdog_priority = max_priority; - - if (jack_create_thread (&engine->watchdog_thread, watchdog_priority, - TRUE, jack_watchdog_thread, engine)) { - jack_error ("cannot start watchdog thread"); - return -1; - } - - return 0; -} - static void jack_engine_delay (jack_engine_t *engine, float delayed_usecs) {