Julian Seward
f9dcb50ea7
Bug 1125091 - Make Nuwa be Valgrind-friendly. r=njn.
2015-06-01 12:18:00 +02:00
Cervantes Yu
a4fc08450a
Bug 1144535: Respect caller-specifed thread attributes in creating threads in the Nuwa process. r=asuth
2015-03-20 18:55:11 +08:00
Cervantes Yu
f6a1d53736
Bug 1119157: Fix false over-recursion in web worker threads by cleaning up thread info in the processes forked from Nuwa. a=asuth
...
--HG--
extra : rebase_source : b207e5374f3c80cf78f89aaf33fd26c577a163b0
2015-02-17 16:25:24 +08:00
Mike Hommey
15332868d1
Fixup bug 1121269 for b2g bustage on a CLOSED TREE. r=me
2015-02-11 11:30:58 +09:00
Mike Hommey
dcd952059c
Bug 1129244 - [Nuwa] wrap pthread_mutex_trylock. r=thinker
2015-02-11 10:21:04 +09:00
Mike Hommey
2790dec186
Bug 1121269 - Remove TLS keys from bookkeeping in non-Nuwa processes too. r=thinker
2015-02-11 10:21:04 +09:00
Mike Hommey
49deb404a9
Bug 1121269 - Use a LinkedList to store TLS keys for Nuwa, and allocate the first element in a static buffer. r=thinker
2015-02-11 10:21:03 +09:00
Botond Ballo
fda172c7fb
Bug 1073003 - Remove an unused function in Nuwa.cpp. r=glandium
...
--HG--
extra : rebase_source : 96fa8ccbeab6c2046c9ca522307a82fe93b04327
2014-12-23 03:21:39 -05:00
Botond Ballo
7a5b4ebc78
Bug 1073003 - Fix -Wunused-variable in Nuwa.cpp. r=glandium
...
--HG--
extra : rebase_source : 6d902895f5e2d08be939213c414e763968d64547
2014-12-23 03:21:24 -05:00
Kai-Zhen Li
79d41284ef
Bug 1103827 - Remove __pthread_cond_timedwait. r=cyu
2014-12-12 16:12:21 +08:00
Cervantes Yu
86d8d5884b
Bug 1091533, Part 2: Implement NuwaAddThreadConstructor() to allow a thread to perform a custom action after being recreated in the content process. r=khuey,tlee
2014-11-06 19:34:03 +08:00
Cervantes Yu
160428a1e3
Bug 1091533, Part 1: Don't wrap tgkill() on the Nuwa process. r=BenWa
2014-11-06 19:10:52 +08:00
Ting-Yu Chou
1e305aa73a
Bug 1038854 - Synchronize mutexes in pthread_cond_wait after recreating threads to avoid race conditions. Parts by Ting-Yu, r=khuey. Parts by Kyle Huey, r=thinker
2014-07-31 10:47:30 +08:00
Wes Kocher
c60b44a7b1
Backed out changeset f73cd738c1fe (bug 1038854) a=backout
2014-07-31 15:04:49 -07:00
Ting-Yu Chou
cce7014830
Bug 1038854 - Avoid making unlocked mutex to locked uncontended after recreating threads from pthread condition wait wrappers. r=khuey
2014-07-31 10:47:30 +08:00
Benoit Jacob
875ebd67ca
Bug 1008254 - Allow Nuwa's global sAllThreads list to be non-empty on exit, to green a near-permanent orange on B2G mochitest-9 - r=khuey
2014-07-02 16:40:29 -04:00
Patrick Wang (Chih-Kai Wang)
01cc0c8352
Bug 1026864: prevent malloc from calling wrapped pthread_mutex_lock and get rid of LibcAllocator. r=cyu,r=glandium,r=khuey
2014-06-25 10:44:58 +08:00
Jed Davis
995ff094cd
Bug 1024805 - Use TaggedAnonymousMemory for Nuwa thread stacks. r=khuey
...
Bonus fixes: make the guard page PROT_NONE instead of PROT_READ,
and correct the stack bounds passed to pthread_attr_setstack.
2014-06-18 17:41:00 +02:00
Patrick Wang (Chih-Kai Wang)
58e49a079d
Bug 999323: use an extra thread to free stack of a exit thread in Nuwa. r=cyu,r=khuey
2014-06-10 16:02:45 +08:00
Robert O'Callahan
7043c985ba
Bug 1006248. Part 1: Add MOZ_EXPORT in various places. r=glandium
...
--HG--
extra : rebase_source : cfe209a412cae28d405eae413415cebb6959072a
2014-05-06 17:26:46 +12:00
Gabriele Svelto
0f7f7f7cff
Bug 982569 - Don't hard-code the page size. r=khuey
2014-04-21 19:32:48 +02:00
Nathan Froyd
b87a188e24
Bug 988499 - terminate #warning string in Nuwa.cpp; r=khuey; f=tzimmerman DONTBUILD because #warnings don't need build and tests
2014-03-24 13:35:43 -04:00
Thomas Zimmermann
2fac99cc52
Bug 979913: Remove unused variables, r=khuey
2014-03-14 11:23:51 +01:00
Thomas Zimmermann
fd33abc3bd
Bug 979913: Conditionally define PAGE_SIZE, r=khuey
...
With this patch the PAGE_SIZE value from the system is used if
possible. If page size is not defined by the system, it is set
to 4096 bytes and a warning is emitted. PAGE_ALIGN_MASK is now
derived from PAGE_SIZE. With these changes, the code should be
more robust on systems with non-4KiB page size.
2014-03-14 11:23:51 +01:00
Carsten "Tomcat" Book
4442714511
Backed out changeset 3e9182f7e25d (bug 979913)
2014-03-14 09:39:35 +01:00
Carsten "Tomcat" Book
013dd86d57
Backed out changeset 79ee6fda8e65 (bug 979913)
2014-03-14 09:39:26 +01:00
Thomas Zimmermann
ad35a39b55
Bug 979913: Remove unused variables, r=khuey
2014-03-14 09:24:05 +01:00
Thomas Zimmermann
69fdcaadac
Bug 979913: Conditionally define PAGE_SIZE, r=khuey
...
With this patch the PAGE_SIZE value from the system is used if
possible. The code still assumes that the PAGE_SIZE is 4096, but
emits a warning if the actual value differs. If page size is not
defined by the system, it is set to 4096 bytes and a warning is
emitted as well.
2014-03-14 09:24:04 +01:00
Jed Davis
154d9c5e2a
Bug 977859 - Drop uid 0 in all content processes immediately after fork. r=bent r=kang
...
Now all regular child processes, including preallocated, are deprivileged.
Only Nuwa needs uid 0, because each of its children has a different uid/gid.
2014-03-12 15:48:15 -07:00
Cervantes Yu
3b8647cc68
Bug 979741 - Use MOZ_DEBUG_CHILD_PROCESS environment variable for processes forked from Nuwa. r=khuey
2014-03-05 20:43:06 +08:00
Cervantes Yu
18af4cf1b7
Bug 966802 - Fix and protect from stack overflow of the threads cloned in the Nuwa process. r=khuey
2014-02-10 08:46:05 -05:00
Cervantes Yu
9556ddc7f7
Bug 961959: fix profiler breakage for the Nuwa process. r=khuey,benwa
2014-01-22 18:56:45 +08:00
Birunthan Mohanathas
a159fb8617
Bug 784739 - Switch from NULL to nullptr in mozglue/; r=ehsan
2013-11-11 14:14:45 -05:00
Cervantes Yu
2f25875737
Bug 928186: fix nuwa process crash due to LibcAllocator not allocating enough memory. r=khuey
2013-10-17 17:00:00 +01:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
52df1fd957
Bug 771765 - Support template content process, part 1: the Nuwa API and low-level wrappers. r=khuey
...
Support of zygote-like process forking is done as:
* The b2g chrome process forks a child process that will be the template for forking other content processes.
* The template process starts running to some point and freeze.
* When ready, the chrome process starts requesting the template to fork content proceses.
* The content processes forked from the template process recovers its states including the threads, file descriptors for epoll, signaling and IPC.
Recovery of the process states are done by wrapping some system and pthread calls to record the states in the template process and recover in the forked content process.
2013-05-07 14:25:13 +08:00