Fwd: [ZEND-ENGINE] CVS update: TSRM

From: 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.c
Log 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;


« previous php.qa (#2862) next »