| 
 | 
 | 
 Chromium Code Reviews
 Chromium Code Reviews Issue 
            2184263003:
    Move RawResourceClient to Oilpan heap  (Closed)
    
  
    Issue 
            2184263003:
    Move RawResourceClient to Oilpan heap  (Closed) 
  | Created: 4 years, 4 months ago by yhirano Modified: 4 years, 4 months ago CC: chromium-reviews, tyoshino+watch_chromium.org, Yoav Weiss, lushnikov+blink_chromium.org, pfeldman+blink_chromium.org, caseq+blink_chromium.org, apavlov+blink_chromium.org, gavinp+loader_chromium.org, devtools-reviews_chromium.org, blink-reviews, loading-reviews+fetch_chromium.org, sergeyv+blink_chromium.org, Nate Chapin, loading-reviews_chromium.org, kozyatinskiy+blink_chromium.org Base URL: https://chromium.googlesource.com/chromium/src.git@onheap-threadable-loader Target Ref: refs/pending/heads/master Project: chromium Visibility: Public. | DescriptionMove RawResourceClient to Oilpan heap
This CL makes RawResourceClient a GarbageCollectedMixin. This CL also
removes weak-pointer destruction detection from RawResource::didAddClient
as Oilpan ensures that a memory region will not be reused until
all pointers pointing to the region are gone.
BUG=587663
Committed: https://crrev.com/b8ef2c595740c8dca0c5bf4e676da7ad8eb2f0ba
Cr-Commit-Position: refs/heads/master@{#411920}
   Patch Set 1 #Patch Set 2 : fix #Patch Set 3 : rebase #Patch Set 4 : rebase #
      Total comments: 4
      
     Patch Set 5 : rebase #Patch Set 6 : rebase #Patch Set 7 : fix #Patch Set 8 : rebase #Depends on Patchset: Dependent Patchsets: Messages
    Total messages: 60 (51 generated)
     
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...) 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Patchset #3 (id:40001) has been deleted 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 Dry run: Try jobs failed on following builders: ios-device-gn on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device-gn/bui...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) ios-simulator-gn on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator-gn/...) 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 Patchset #3 (id:60001) has been deleted 
 Patchset #2 (id:20001) has been deleted 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 Description was changed from ========== Move RawResourceClient to Oilpan heap BUG= ========== to ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all stack pointer pointing to the region are gone. BUG=587663 ========== 
 yhirano@chromium.org changed reviewers: + hiroshige@chromium.org, japhet@chromium.org, oilpan-reviews@chromium.org 
 
 LGTM 
 Description was changed from ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all stack pointer pointing to the region are gone. BUG=587663 ========== to ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all pointers pointing to the region are gone. BUG=587663 ========== 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 Nate, Hiroshige: ping 
 Awesome! LGTM, just a couple of nitpicks. https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/RawResource.h (right): https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/RawResource.h:105: class CORE_EXPORT RawResourceClient : public GarbageCollectedMixin, public ResourceClient { Nit: I've usually seen GarbageCollecedMixin as the last declared parent class. Any particular reason to invert the ordering? https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h (right): https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h:57: class CORE_EXPORT DocumentThreadableLoader final : public ThreadableLoader, public ResourceOwner<RawResource> { I don't immediately see why private->public is necessary? 
 lgtm. 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/fetch/RawResource.h (right): https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/core/fetch/RawResource.h:105: class CORE_EXPORT RawResourceClient : public GarbageCollectedMixin, public ResourceClient { On 2016/08/03 19:37:01, Nate Chapin wrote: > Nit: I've usually seen GarbageCollecedMixin as the last declared parent class. > Any particular reason to invert the ordering? I get an error when I specify GarbageCollecteMixin as the last parent: "error: [blink-gc] Left-most base class 'ResourceClient' of derived class 'RawResourceClient' must define a virtual trace method." https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... File third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h (right): https://codereview.chromium.org/2184263003/diff/120001/third_party/WebKit/Sou... third_party/WebKit/Source/core/loader/DocumentThreadableLoader.h:57: class CORE_EXPORT DocumentThreadableLoader final : public ThreadableLoader, public ResourceOwner<RawResource> { On 2016/08/03 19:37:01, Nate Chapin wrote: > I don't immediately see why private->public is necessary? I thought it necessary, but it's apparently not. Reverted the change. 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...) 
 The CQ bit was checked by yhirano@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by commit-bot@chromium.org 
 Dry run: This issue passed the CQ dry run. 
 The CQ bit was checked by yhirano@chromium.org 
 The patchset sent to the CQ was uploaded after l-g-t-m from haraken@chromium.org, hiroshige@chromium.org, japhet@chromium.org Link to the patchset: https://codereview.chromium.org/2184263003/#ps200001 (title: "rebase") 
 CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 
            
              
                Message was sent while issue was closed.
              
            
             Description was changed from ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all pointers pointing to the region are gone. BUG=587663 ========== to ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all pointers pointing to the region are gone. BUG=587663 ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             Committed patchset #8 (id:200001) 
 
            
              
                Message was sent while issue was closed.
              
            
             Description was changed from ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all pointers pointing to the region are gone. BUG=587663 ========== to ========== Move RawResourceClient to Oilpan heap This CL makes RawResourceClient a GarbageCollectedMixin. This CL also removes weak-pointer destruction detection from RawResource::didAddClient as Oilpan ensures that a memory region will not be reused until all pointers pointing to the region are gone. BUG=587663 Committed: https://crrev.com/b8ef2c595740c8dca0c5bf4e676da7ad8eb2f0ba Cr-Commit-Position: refs/heads/master@{#411920} ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             Patchset 8 (id:??) landed as https://crrev.com/b8ef2c595740c8dca0c5bf4e676da7ad8eb2f0ba Cr-Commit-Position: refs/heads/master@{#411920} | 
