Changeset 2827460 in git


Ignore:
Timestamp:
2013-09-25T02:58:06Z (6 years ago)
Author:
Xuefer <xuefer@…>
Branches:
3.0
Children:
53cc8d9
Parents:
319936f
Message:

merge r1381,r1388,r1394 from trunk: fixed #324: xcache.readonly_protection = Off cause SEGV under mass concurrent

git-svn-id: svn://svn.lighttpd.net/xcache/branches/3.0@1395 c26eb9a1-5813-0410-bd6c-c2e55f420ca7

Files:
4 edited

Legend:

Unmodified
Added
Removed
  • ChangeLog

    rc5346e4 r2827460  
    33========
    44 * cacher
     5   * fixed #324: xcache.readonly_protection = Off cause SEGV under mass concurrent
    56   * fixed #323: refix locking impl for threaded env
    67
  • NEWS

    rc5346e4 r2827460  
    113.0.4 2013-09-??
    22========
     3 * improve stability under massive concurrent
    34 * refix locking impl for threaded env
    45
  • processor/processor.m4

    r10a77c1 r2827460  
    722722        /* really fast shallow copy */
    723723        memcpy(dst, src, sizeof(src[0]));
    724         dst->refcount[0] = 1000;
     724        DST(`refcount') = &XG(op_array_dummy_refcount_holder);
     725        XG(op_array_dummy_refcount_holder) = ((zend_uint) -1) / 2;
    725726#ifdef ZEND_ACC_ALIAS
    726727        if ((processor->active_class_entry_src && (processor->active_class_entry_src->ce_flags & ZEND_ACC_TRAIT))) {
     
    862863
    863864    STRUCT_P(zend_uint, refcount)
    864     UNFIXPOINTER(zend_uint, refcount)
    865     IFSTORE(`dst->refcount[0] = 1;')
     865    IFSTORE(`
     866        UNFIXPOINTER(zend_uint, refcount)
     867        DST(`refcount[0]') = 1;
     868        FIXPOINTER(zend_uint, refcount)
     869    ')
    866870
    867871#ifdef ZEND_ENGINE_2_4
  • xcache_globals.h

    r18eb8af r2827460  
    4141
    4242    void *sandbox;
     43    zend_uint op_array_dummy_refcount_holder;
    4344ZEND_END_MODULE_GLOBALS(xcache)
    4445
Note: See TracChangeset for help on using the changeset viewer.