Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(277)

Issue 1988183002: Reimplement PooledI420Buffer, without an extra indirection. (Closed)

Created:
4 years, 7 months ago by nisse-webrtc
Modified:
4 years, 6 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com
Base URL:
https://chromium.googlesource.com/external/webrtc.git@master
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Reimplement PooledI420Buffer, without an extra indirection. Adds a method RefCountedObject::GetRefCount. Let PooledI420Buffer inherit the plain I420Buffer, and override IsMutable to allow two references to managed buffers. Only tricky issue is to support the pool Release method. BUG=webrtc:5921, webrtc:5682

Patch Set 1 #

Patch Set 2 : Fix IsFree logic. Comment improvements. #

Patch Set 3 : Add destructor, calling Release(). #

Total comments: 12

Patch Set 4 : Addressed pbos' comments, except thread checker. #

Total comments: 1

Patch Set 5 : Fix missing-parens bug. #

Patch Set 6 : Document IsMutable race issues, and the plan for its removal. #

Total comments: 5

Patch Set 7 : Added GetRefCount TODO comment. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+125 lines, -64 lines) Patch
M webrtc/base/refcount.h View 1 2 3 4 5 6 1 chunk +12 lines, -3 lines 0 comments Download
M webrtc/common_video/i420_buffer_pool.cc View 1 2 3 4 5 1 chunk +97 lines, -59 lines 0 comments Download
M webrtc/common_video/include/i420_buffer_pool.h View 1 2 3 1 chunk +16 lines, -2 lines 0 comments Download

Messages

Total messages: 38 (12 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1988183002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1988183002/1
4 years, 7 months ago (2016-05-18 16:06:10 UTC) #2
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_rel on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/win_rel/builds/15136) win_x64_rel on ...
4 years, 7 months ago (2016-05-18 16:14:41 UTC) #4
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1988183002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1988183002/20001
4 years, 7 months ago (2016-05-19 07:55:05 UTC) #6
nisse-webrtc
This is a change I've been considering for some time. Main motivation to do it ...
4 years, 7 months ago (2016-05-19 08:26:34 UTC) #8
magjed_webrtc
On 2016/05/19 08:26:34, nisse-webrtc wrote: > I really need review from someone more familiar with ...
4 years, 7 months ago (2016-05-19 09:16:39 UTC) #10
nisse-webrtc
On 2016/05/19 09:16:39, magjed_webrtc wrote: > This sounds very complicated. The only thing which is ...
4 years, 7 months ago (2016-05-19 09:38:58 UTC) #11
magjed_webrtc
On 2016/05/19 09:38:58, nisse-webrtc wrote: > On 2016/05/19 09:16:39, magjed_webrtc wrote: > > > This ...
4 years, 7 months ago (2016-05-19 09:56:54 UTC) #12
nisse-webrtc
On 2016/05/19 09:56:54, magjed_webrtc wrote: >> Why can't we get rid of IsMutable in this ...
4 years, 7 months ago (2016-05-19 10:10:45 UTC) #13
pbos-webrtc
https://codereview.webrtc.org/1988183002/diff/40001/webrtc/common_video/i420_buffer_pool.cc File webrtc/common_video/i420_buffer_pool.cc (right): https://codereview.webrtc.org/1988183002/diff/40001/webrtc/common_video/i420_buffer_pool.cc#newcode46 webrtc/common_video/i420_buffer_pool.cc:46: int I420BufferPool::PooledI420Buffer::IsManaged() const { bool, even if that means ...
4 years, 7 months ago (2016-05-19 15:03:22 UTC) #14
nisse-webrtc
https://codereview.webrtc.org/1988183002/diff/40001/webrtc/common_video/i420_buffer_pool.cc File webrtc/common_video/i420_buffer_pool.cc (right): https://codereview.webrtc.org/1988183002/diff/40001/webrtc/common_video/i420_buffer_pool.cc#newcode46 webrtc/common_video/i420_buffer_pool.cc:46: int I420BufferPool::PooledI420Buffer::IsManaged() const { On 2016/05/19 15:03:22, pbos-webrtc wrote: ...
4 years, 7 months ago (2016-05-20 07:30:26 UTC) #15
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1988183002/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1988183002/60001
4 years, 7 months ago (2016-05-20 07:35:31 UTC) #17
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_rel on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/win_rel/builds/15182) win_x64_gn_rel on ...
4 years, 7 months ago (2016-05-20 07:42:02 UTC) #19
nisse-webrtc
https://codereview.webrtc.org/1988183002/diff/60001/webrtc/common_video/i420_buffer_pool.cc File webrtc/common_video/i420_buffer_pool.cc (right): https://codereview.webrtc.org/1988183002/diff/60001/webrtc/common_video/i420_buffer_pool.cc#newcode42 webrtc/common_video/i420_buffer_pool.cc:42: return refs <= IsManaged() ? 2 : 1; This ...
4 years, 7 months ago (2016-05-20 08:20:48 UTC) #20
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1988183002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1988183002/80001
4 years, 7 months ago (2016-05-20 08:21:09 UTC) #22
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_ubsan_vptr on tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/linux_ubsan_vptr/builds/2691)
4 years, 7 months ago (2016-05-20 09:31:56 UTC) #24
nisse-webrtc
I've extended the comments, including the plan for eventual removal of IsMutable. There remains a ...
4 years, 7 months ago (2016-05-20 10:09:04 UTC) #25
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1988183002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1988183002/100001
4 years, 7 months ago (2016-05-20 10:09:39 UTC) #27
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: android_arm64_rel on tryserver.webrtc (JOB_TIMED_OUT, no build URL) ...
4 years, 7 months ago (2016-05-20 12:10:14 UTC) #29
pbos-webrtc
https://codereview.webrtc.org/1988183002/diff/100001/webrtc/base/refcount.h File webrtc/base/refcount.h (right): https://codereview.webrtc.org/1988183002/diff/100001/webrtc/base/refcount.h#newcode114 webrtc/base/refcount.h:114: virtual int GetRefCount() const { I think this method ...
4 years, 7 months ago (2016-05-20 13:32:21 UTC) #30
nisse-webrtc
https://codereview.webrtc.org/1988183002/diff/100001/webrtc/base/refcount.h File webrtc/base/refcount.h (right): https://codereview.webrtc.org/1988183002/diff/100001/webrtc/base/refcount.h#newcode114 webrtc/base/refcount.h:114: virtual int GetRefCount() const { On 2016/05/20 13:32:21, pbos-webrtc ...
4 years, 7 months ago (2016-05-23 07:35:06 UTC) #32
pbos-webrtc
https://codereview.webrtc.org/1988183002/diff/100001/webrtc/common_video/i420_buffer_pool.cc File webrtc/common_video/i420_buffer_pool.cc (right): https://codereview.webrtc.org/1988183002/diff/100001/webrtc/common_video/i420_buffer_pool.cc#newcode80 webrtc/common_video/i420_buffer_pool.cc:80: return refs <= (IsManaged() ? 2 : 1); On ...
4 years, 7 months ago (2016-05-23 07:39:29 UTC) #33
nisse-webrtc
Ping. What can I do for you to make progress on this cl?
4 years, 7 months ago (2016-05-25 07:38:29 UTC) #34
tommi
On 2016/05/25 07:38:29, nisse-webrtc wrote: > Ping. > > What can I do for you ...
4 years, 7 months ago (2016-05-25 08:28:44 UTC) #35
pbos-webrtc
On 2016/05/25 08:28:44, tommi-webrtc wrote: > On 2016/05/25 07:38:29, nisse-webrtc wrote: > > Ping. > ...
4 years, 7 months ago (2016-05-25 10:31:46 UTC) #36
nisse-webrtc
On 2016/05/25 10:31:46, pbos-webrtc wrote: > On 2016/05/25 08:28:44, tommi-webrtc wrote: > > On 2016/05/25 ...
4 years, 7 months ago (2016-05-25 11:00:55 UTC) #37
nisse-webrtc
4 years, 6 months ago (2016-05-27 07:24:27 UTC) #38
On 2016/05/25 11:00:55, nisse-webrtc wrote:
> On 2016/05/25 10:31:46, pbos-webrtc wrote:
> > On 2016/05/25 08:28:44, tommi-webrtc wrote:
> > > On 2016/05/25 07:38:29, nisse-webrtc wrote:
> > > > Ping.
> > > > 
> > > > What can I do for you to make progress on this cl?
> > > 
> > > who is being pinged?
> > 
> > Tommi can you take a look and then I'll take a final look depending on
> comments
> > that you have. :)
> 
> I'm trying a different approach now... If that works out, GetRefCount isn't
> needed. See https://codereview.webrtc.org/2009193002/

Closing this now, superseded by the other cl.

Powered by Google App Engine
This is Rietveld 408576698