#At lp:maria 2803 kniel...@knielsen-hq.org 2010-01-15 Fix crashes by taking kernel mutex when calling srv_table_reserve_slot() during thread startup. modified: storage/xtradb/srv/srv0srv.c
=== modified file 'storage/xtradb/srv/srv0srv.c' --- a/storage/xtradb/srv/srv0srv.c 2010-01-15 15:58:25 +0000 +++ b/storage/xtradb/srv/srv0srv.c 2010-01-15 19:48:33 +0000 @@ -2559,10 +2559,9 @@ srv_master_thread( srv_main_thread_process_no = os_proc_get_number(); srv_main_thread_id = os_thread_pf(os_thread_get_curr_id()); - srv_table_reserve_slot(SRV_MASTER); - mutex_enter(&kernel_mutex); + srv_table_reserve_slot(SRV_MASTER); srv_n_threads_active[SRV_MASTER]++; mutex_exit(&kernel_mutex); @@ -3167,8 +3166,8 @@ srv_purge_thread( os_thread_pf(os_thread_get_curr_id())); #endif - srv_table_reserve_slot(SRV_PURGE); mutex_enter(&kernel_mutex); + srv_table_reserve_slot(SRV_PURGE); srv_n_threads_active[SRV_PURGE]++; mutex_exit(&kernel_mutex); @@ -3255,8 +3254,8 @@ srv_purge_worker_thread( fprintf(stderr, "Purge worker thread starts, id %lu\n", os_thread_pf(os_thread_get_curr_id())); #endif - srv_table_reserve_slot(SRV_PURGE_WORKER); mutex_enter(&kernel_mutex); + srv_table_reserve_slot(SRV_PURGE_WORKER); srv_n_threads_active[SRV_PURGE_WORKER]++; mutex_exit(&kernel_mutex); _______________________________________________ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp