Re: Fix for bug #25543

From: Date: Sat, 04 Oct 2003 10:13:12 +0000
Subject: Re: Fix for bug #25543
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-4671@lists.php.net to get a copy of this message
At 08:16 AM 10/4/2003 +0900, Moriyoshi Koizumi wrote:
Andi Gutmans <andi@zend.com> wrote: Hi, I don't like this patch because already the gc is a very sensitive mechanism and we're not allowed to collect too much or too little at any given time. Your patch can easily lead to too much being collected before previous zval's are freed which can lead to problems (this mechanism was refined a couple of times due to such problems). The only real solution I can see is to nuke the garbage completely. I already have a rough idea of how to do it but it requires quite a lot of work. BTW, I didn't quite understand the bug report 25543. It doesn't seem to be very well written (I know it's not you :) Actually the PR number is 25547 :) Anyway, I don't think my patch is so harmful because the pointer to a zval (semantically a container of a zval instance) that has been created at certain znode construction is supposed not to be destroyed during an atomic operation, by which I mean a single opcode processing. That's why I named them zend_*_atomic().
OK, that explains why the bug report didn't seem to have anything to do with this problem :) I disagree. It definitely has potential to be harmful because the garbage isn't running every opcode like it should. At least that's what I figured from reading the patch. Andi

« previous php.internals (#4671) next »