[squid-dev] [PATCH] Bug3329

Tsantilas Christos chtsanti at users.sourceforge.net
Thu May 28 07:41:13 UTC 2015


I am attaching a new patch for trunk which renames the  noteClsure() to 
noteClosureXXX().

If it is OK, I will post the squid-3.5 patch to.

Regards,
     Christos

On 05/26/2015 10:59 AM, Amos Jeffries wrote:
> On 26/05/2015 12:43 a.m., Tsantilas Christos wrote:
>> On 05/25/2015 02:37 PM, Amos Jeffries wrote:
>>> On 25/05/2015 10:13 p.m., Tsantilas Christos wrote:
>>>> Hi all,
>>>>
>>>>     I am attaching new squid patches for bug3329.
>>>
>>>
>>> +1 on the conversion of comm_close() to X->close()
>>>
>>> However please name the noteClsure() as noteClosureXXX() to highlight
>>> that this function is undesirable and we need to fix the underlying
>>> problem still for the places which find themselves having to use it
>>
>> The suggestion of this patch is to start use the noteClosure method to
>> all comm_close handlers to avoid such problems.
>>
>> The problem is not appears only when the comm_close method on fds is
>> used. We may face the same problem when a timeout is expired but not a
>> timeout-handler is installed for the fd. In this case squid code will
>> just close the fd. Still some Comm::Connection objects may use the fd,
>> but not informed about the fd closure.
>
>
> A better long term way would be the comm FD opening code to install the
> first close callback that hold reference to the Comm::Connection and
> sets the FD to -1 when its closed without close().
>
> We cant do that until those "abandoned" and "orphan" connections are all
> figured out though. So we dont end up with that close handler being a
> lingering reference-count that holds all the state alive.
>
> So I agree this method is needed right now, but only as a temporary fix.
>
> Amos
>
> _______________________________________________
> squid-dev mailing list
> squid-dev at lists.squid-cache.org
> http://lists.squid-cache.org/listinfo/squid-dev
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: bug3329-trunk-t6.patch
Type: text/x-patch
Size: 12216 bytes
Desc: not available
URL: <http://lists.squid-cache.org/pipermail/squid-dev/attachments/20150528/57309ce6/attachment.bin>


More information about the squid-dev mailing list