[x265] [PATCH] framefilter: remove heap corruption in tld

Deepthi Nandakumar deepthi at multicorewareinc.com
Wed Jul 2 12:25:23 CEST 2014


Hmm, I'm wondering doesnt m_tld rightfully belong to Encoder?


On Wed, Jul 2, 2014 at 3:39 PM, Aarthi Priya Thirumalai <
aarthi at multicorewareinc.com> wrote:

>
> Exactly that!  make FrameEncoder::m_tld a public member for framefilter to
> access, use it in when Wpp is disabled.
>
>
> On Wed, Jul 2, 2014 at 2:25 PM, Deepthi Nandakumar <
> deepthi at multicorewareinc.com> wrote:
>
>> The framefilter structure needs ThreadLocalData m_tld, that has to be
>> initialised, and then used if wpp is not enabled. Not sure what you're
>> trying to do here?
>>
>>
>> On Wed, Jul 2, 2014 at 2:20 PM, Aarthi Priya Thirumalai <
>> aarthi at multicorewareinc.com> wrote:
>>
>>>  sry, Thg client didnt sync the changes properly for the previous
>>> commit. here is the right one
>>>
>>> # HG changeset patch
>>> # User Aarthi Thirumalai
>>> # Date 1404290172 -19800
>>> #      Wed Jul 02 14:06:12 2014 +0530
>>> # Node ID a5a439242bbf367f5d76356b841cfa1ee9e119e4
>>> # Parent  a18972fd05b1d6242a881bef979b9e1ff17543d9
>>> framefilter: remove heap corruption in tld
>>>
>>> diff -r a18972fd05b1 -r a5a439242bbf source/encoder/frameencoder.h
>>> --- a/source/encoder/frameencoder.h Tue Jul 01 14:58:35 2014 -0500
>>> +++ b/source/encoder/frameencoder.h Wed Jul 02 14:06:12 2014 +0530
>>> @@ -171,7 +171,7 @@
>>>      uint32_t                 m_checksum[3];
>>>      double                   m_elapsedCompressTime; // elapsed time
>>> spent in worker threads
>>>      double                   m_frameTime;           // wall time from
>>> frame start to finish
>>> -
>>> +    ThreadLocalData          m_tld;
>>>      volatile bool            m_bAllRowsStop;
>>>      volatile int             m_vbvResetTriggerRow;
>>>
>>> @@ -191,7 +191,6 @@
>>>       Bitstream*               m_outStreams;
>>>      NoiseReduction           m_nr;
>>>      NALList                  m_nalList;
>>> -    ThreadLocalData          m_tld;
>>>
>>>      Frame*                   m_frame;
>>>
>>> diff -r a18972fd05b1 -r a5a439242bbf source/encoder/framefilter.cpp
>>> --- a/source/encoder/framefilter.cpp Tue Jul 01 14:58:35 2014 -0500
>>> +++ b/source/encoder/framefilter.cpp Wed Jul 02 14:06:12 2014 +0530
>>> @@ -124,8 +124,7 @@
>>>  void FrameFilter::processRow(int row, const int threadId)
>>>  {
>>>      PPAScopeEvent(Thread_filterCU);
>>> -    assert(threadId >= 0);
>>> -    ThreadLocalData& tld = Encoder::m_threadLocalData[threadId];
>>> +    ThreadLocalData& tld = threadId >= 0 ?
>>> Encoder::m_threadLocalData[threadId] : m_frame->m_tld;
>>>
>>>      if (!m_param->bEnableLoopFilter && !m_param->bEnableSAO)
>>>      {
>>>
>>>
>>> On Wed, Jul 2, 2014 at 2:15 PM, <aarthi at multicorewareinc.com> wrote:
>>>
>>>> # HG changeset patch
>>>> # User Aarthi Thirumalai
>>>> # Date 1404290172 -19800
>>>> #      Wed Jul 02 14:06:12 2014 +0530
>>>> # Node ID 69d9bd3eb5bd015d2e0c90d51eec0d7f8a4747d0
>>>> # Parent  a18972fd05b1d6242a881bef979b9e1ff17543d9
>>>> framefilter: remove heap corruption in tld
>>>>
>>>> diff -r a18972fd05b1 -r 69d9bd3eb5bd source/encoder/frameencoder.h
>>>> --- a/source/encoder/frameencoder.h     Tue Jul 01 14:58:35 2014 -0500
>>>> +++ b/source/encoder/frameencoder.h     Wed Jul 02 14:06:12 2014 +0530
>>>> @@ -191,7 +191,6 @@
>>>>      Bitstream*               m_outStreams;
>>>>      NoiseReduction           m_nr;
>>>>      NALList                  m_nalList;
>>>> -    ThreadLocalData          m_tld;
>>>>
>>>>      Frame*                   m_frame;
>>>>
>>>>
>>>
>>> _______________________________________________
>>> x265-devel mailing list
>>> x265-devel at videolan.org
>>> https://mailman.videolan.org/listinfo/x265-devel
>>>
>>>
>>
>> _______________________________________________
>> x265-devel mailing list
>> x265-devel at videolan.org
>> https://mailman.videolan.org/listinfo/x265-devel
>>
>>
>
> _______________________________________________
> x265-devel mailing list
> x265-devel at videolan.org
> https://mailman.videolan.org/listinfo/x265-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20140702/dc3bf42e/attachment.html>


More information about the x265-devel mailing list