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

Issue 2429773002: osmesa, cdmadapter: drop workaround for VS2013 allocator shim

Created:
4 years, 2 months ago by Primiano Tucci (use gerrit)
Modified:
4 years ago
CC:
chromium-reviews, eme-reviews_chromium.org, feature-media-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

osmesa, cdmadapter: drop workaround for VS2013 allocator shim This is a partial revert of crrev.com/1616793003 . crrev.com/1616793003 introduced a workaround to the clearkeycdmadapter and osmesa libs to deal with a breakage on windows. The breakage was because in the days of MSVS2013 and gyp the win shim was working by: 1. removing the dependency to libcrt from any target that would depend directly or indirectly on //base. 2. giving them a replacement shim which did redefine allocator syms. However, all this was working only in the case that the target was ending up linking //base, which is the case for *almost* any target in chrome. It was known to break if we had a case of a target depending on //base only via a shared library dependency (so depending on, but not linking, //base). In such case only 1 would happen but not 2, leading to a build failure on win, as highlighted in the commit message of crrev.com/1616793003 . We estimated this to be very rare in the codebase, and effectively did affect only osmesa and cdmadaptr, so we added a workaround there. Now that both gyp and MSVS2013 are no more, we can go back to the more sensible case where only the root executable (chrome, or whatever else executable linking base) is the only thing defining the allocator symbols. No workaround should be needed anymore. BUG=617732

Patch Set 1 #

Patch Set 2 : add nogncheck around trivial base includes from headers used by the cdm adapter #

Unified diffs Side-by-side diffs Delta from patch set Stats (+12 lines, -18 lines) Patch
M media/cdm/cdm_helpers.h View 1 1 chunk +3 lines, -3 lines 0 comments Download
M media/cdm/cdm_helpers.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M media/cdm/cdm_wrapper.h View 1 2 chunks +2 lines, -2 lines 0 comments Download
M media/cdm/ppapi/BUILD.gn View 1 chunk +0 lines, -1 line 0 comments Download
M media/cdm/ppapi/cdm_file_io_impl.h View 1 1 chunk +1 line, -1 line 0 comments Download
M media/cdm/ppapi/ppapi_cdm_adapter.h View 1 1 chunk +2 lines, -2 lines 0 comments Download
M media/cdm/ppapi/ppapi_cdm_adapter.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M media/cdm/ppapi/ppapi_cdm_buffer.h View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/mesa/BUILD.gn View 1 chunk +0 lines, -5 lines 0 comments Download

Messages

Total messages: 18 (11 generated)
Primiano Tucci (use gerrit)
+wfh FYI
4 years, 2 months ago (2016-10-18 08:05:50 UTC) #5
Primiano Tucci (use gerrit)
Dale/xhwang, adding a bunch of extra nognchecks because: after I added that //base dependency new ...
4 years, 2 months ago (2016-10-18 08:34:21 UTC) #11
xhwang
cdm lgtm
4 years, 2 months ago (2016-10-18 17:01:13 UTC) #14
Ken Russell (switch to Gerrit)
lgtm
4 years, 2 months ago (2016-10-18 18:30:18 UTC) #15
Will Harris
the vs2015 shim still overrides the allocator functions but relies on link time ordering rather ...
4 years, 2 months ago (2016-10-18 18:33:52 UTC) #16
Primiano Tucci (use gerrit)
On 2016/10/18 18:33:52, Will Harris wrote: > the vs2015 shim still overrides the allocator functions ...
4 years ago (2016-12-13 20:20:34 UTC) #17
Ken Russell (switch to Gerrit)
4 years ago (2016-12-13 21:35:19 UTC) #18
On 2016/12/13 20:20:34, Primiano Tucci wrote:
> On 2016/10/18 18:33:52, Will Harris wrote:
> > the vs2015 shim still overrides the allocator functions but relies on link
> time
> > ordering rather than stripping them from the ucrt.
> > 
> > do the source files here have target that is its own DLL or EXE, and do they
> > include any third party code? If so it would be nice to actually check that
> they
> > are correctly importing the shim somewhere in the main() path.
> 
> Apologies I completely forgot about this.
> 
> kbr@ correct me if I am wrong but the osmesa target is some sw emulation that
we
> don't really ship and use only for tests, right?

That's correct.

> xhwang: is clearkeycdmadapter.so something that we ship for real?

Powered by Google App Engine
This is Rietveld 408576698