Fwd: [ZEND-ENGINE] CVS update: TSRM
| From: | Andi Gutmans | Date: | Fri, 20 Apr 2001 15:06:36 +0000 |
| Subject: | Fwd: [ZEND-ENGINE] CVS update: TSRM | ||
| Groups: | php.qa | ||
| Request: | Send a blank email to php-qa+get-2862@lists.php.net to get a copy of this message | ||
Long shot but can you see if this patch fixes anything? It means there will be a lock()/unlock() around the whole section of free_thread() and not in stages. I doubt it will help but it's a good idea to check because this hasn't been merged for 4.0.5
Thanks,
Andi
Delivered-To: alias-zend-andi-zend-cvs@zend.com Mailing-List: contact zend-cvs-help@zend.com; run by ezmlm X-No-Archive: yes list-help: <mailto:zend-cvs-help@zend.com> list-unsubscribe: <mailto:zend-cvs-unsubscribe@zend.com> list-post: <mailto:zend-cvs@zend.com> Delivered-To: mailing list zend-cvs@zend.com Date: 5 Apr 2001 14:00:54 -0000 Reply-To: zend@zend.com From: andi <zend@zend.com> To: zend-cvs@zend.com Subject: [ZEND-ENGINE] CVS update: TSRM X-Status: X-Keywords: Date: Thursday April 5, 19101 @ 16:00 Author: andi Update of /repository/TSRM In directory mail.zend.com:/disk1/tmp/cvs-serv31906 Modified Files:TSRM.cLog Message: - Lock the whole thing for now in order not to have a race condition. It shouldn't effect performance too much because usually threads are reused a few times before they are nuked by the web server, at least under IIS and Zeus. Index: TSRM/TSRM.c diff -u TSRM/TSRM.c:1.30 TSRM/TSRM.c:1.31--- TSRM/TSRM.c:1.30 Wed Apr 4 23:43:04 2001+++ TSRM/TSRM.c Thu Apr 5 16:00:54 2001 @@ -337,8 +337,6 @@while (thread_resources) { if (thread_resources->thread_id == thread_id) { - tsrm_mutex_unlock(tsmm_mutex);-for (i=0; i<thread_resources->count; i++) { if (resource_types_table[i].dtor) {resource_types_table[i].dtor(thread_resources->storage[i]); @@ -347,7 +345,6 @@for (i=0; i<thread_resources->count; i++) { free(thread_resources->storage[i]); } - tsrm_mutex_lock(tsmm_mutex); free(thread_resources->storage); if (last) { last->next = thread_resources->next;