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

Side by Side Diff: third_party/mach_override/README.chromium

Issue 7748042: Merge trunk r97497 and its many dependents to the 14.0.835 branch. (Closed) Base URL: svn://svn.chromium.org/chrome/branches/835/src/
Patch Set: Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/common/mac/cfbundle_blocker.mm ('k') | third_party/mach_override/mach_override.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 Name: mach_override 1 Name: mach_override
2 Short Name: Part of the mach_star project 2 Short Name: Part of the mach_star project
3 Version: Unknown 3 Version: Unknown
4 URL: https://github.com/rentzsch/mach_star 4 URL: https://github.com/rentzsch/mach_star
5 Date: 04/18/2011 5 Date: 08/19/2011
6 Revision: 32c4560eb09848073f69 6 Revision: 87f491f8acef924d2ba90dd55fc23ad64f9d5bbd
7 License: MIT 7 License: MIT
8 Security Critical: Yes 8 Security Critical: Yes
9 9
10 10
11 Description: 11 Description:
12 This is the mach_override part of mach_star, namely: 12 This is the mach_override part of mach_star, namely:
13 13
14 https://github.com/rentzsch/mach_star/tree/aeb1720815c7255070da0f548267ccfdf7b d50b7 14 https://github.com/rentzsch/mach_star/tree/87f491f8acef924d2ba90dd55fc23ad64f9 d5bbd
15 15
16 This package is used to replace framework functions with different 16 This package is used to replace framework functions with different
17 implementations at run time. 17 implementations at run time.
18 18
19 19
20 Local Modifications: 20 Local Modifications:
21 21
22 Enabled makeIslandExecutable for 32-bit i386. Main executables linked and run 22 reentryIsland is allocated in high memory with vm_allocate rather than the
23 on Mac OS X 10.7 ("Lion") have non-executable heap pages by default. See 23 heap with malloc by changing the allocation policy to kAllocateHigh. It
24 http://crbug.com/79642. 24 appears probable that putting the reentry island in the heap causes its page
25 25 to lose execute permission at some point under some circumstances, which
26 Changed the logic surrounding calls to makeIslandExecutable so that 26 results in a crash on Lion. This modification is temoprary to simply test
27 mach_override_ptr can return successfully when originalFunctionReentryIsland, 27 out the theory. If proven, the code will be improved somewhat.
28 an optional argument, is NULL. Failure in makeIslandExecutable will now 28 http://crbug.com/93736.
29 trigger cleanup of allocated memory.
30
31 Changed allocateBranchIsland to use a more appropriate address range per
32 http://developer.apple.com/library/mac/#documentation/Performance/Conceptual/Lau nchTime/Articles/Prebinding.html.
33 The range for x86 (32-bit) with kAllocateHigh set is now [0xffc00000,
34 0xffe00000). In this configuration, the loop is now guaranteed to terminate
35 instead of exceeding its permitted range. Previously, this function would
36 begin looking for a page at 0xfefff000 and would not stop, even after wrapping
37 around to low memory. The URL above states 0xfefff000 is within a range marked
38 "Reserved for use by the pasteboard and other system services. Do not use this
39 address range."
OLDNEW
« no previous file with comments | « chrome/common/mac/cfbundle_blocker.mm ('k') | third_party/mach_override/mach_override.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698