OSDN Git Service
Elliott Hughes [Fri, 16 May 2014 19:56:52 +0000 (19:56 +0000)]
Merge "Hide __futex_wake_ex and __futex_wait_ex."
Elliott Hughes [Fri, 16 May 2014 19:53:31 +0000 (12:53 -0700)]
Hide __futex_wake_ex and __futex_wait_ex.
Also remove some cruft that isn't needed now we're using uapi headers.
Bug:
11156955
Change-Id: I936b9c5b01d8bd6bfb2e5bc0e3f86cd86739cc04
Elliott Hughes [Fri, 16 May 2014 18:00:51 +0000 (18:00 +0000)]
Merge "With libstdc++ in libc, __futex_wait and __futex_wake can be hidden."
Elliott Hughes [Thu, 15 May 2014 01:22:58 +0000 (18:22 -0700)]
With libstdc++ in libc, __futex_wait and __futex_wake can be hidden.
This patch is conservative and just touches LP64. (But not because we
know of anyone using this in LP32.)
Bug:
13367666
Change-Id: Id45652debc4534584479b16b501401f6f23acea9
Elliott Hughes [Fri, 16 May 2014 16:37:20 +0000 (16:37 +0000)]
Merge "Move libstdc++ into libc."
Christopher Ferris [Fri, 16 May 2014 02:14:07 +0000 (02:14 +0000)]
Merge "Fix comment typo."
Christopher Ferris [Fri, 16 May 2014 01:12:11 +0000 (18:12 -0700)]
Fix comment typo.
Change-Id: I1909f724826b531daf14fec4853e40d578fc0f59
Dmitriy Ivanov [Fri, 16 May 2014 00:37:53 +0000 (00:37 +0000)]
Merge "Register _cleanup function with atexit"
Elliott Hughes [Thu, 15 May 2014 23:03:25 +0000 (23:03 +0000)]
Merge "Scrub uapi headers slightly harder."
Dmitriy Ivanov [Thu, 15 May 2014 21:55:23 +0000 (21:55 +0000)]
Merge "Improve detection of already loaded libraries"
Dmitriy Ivanov [Thu, 15 May 2014 06:11:05 +0000 (23:11 -0700)]
Register _cleanup function with atexit
* Register cleanup function with atexit
instead of calling it explicitly on
exit()
* abort() no longer calls _cleanup:
Flushing stdio buffers on abort is no
longer required by POSIX.
* dlmalloc no longer need to reset cleanup
(see above)
* Upstream findfp.c makebuf.c setvbuf.cexit.c
to openbsd versions.
Bug:
14415367
Change-Id: I277058852485a9d3dbb13e5c232db5f9948d78ac
Elliott Hughes [Thu, 15 May 2014 19:01:11 +0000 (12:01 -0700)]
Scrub uapi headers slightly harder.
There's no point having always-false tests. It just makes the headers
harder to read.
Bug:
11560081
Change-Id: I6187755e1514ca9ff5642b3c1b0489f22edddaf5
Calin Juravle [Thu, 15 May 2014 09:36:22 +0000 (09:36 +0000)]
Merge "Document a known test issue in stdio_test.cpp."
Calin Juravle [Thu, 15 May 2014 09:36:00 +0000 (09:36 +0000)]
Merge "Fill in missing bits in x86(_64) ucontext_t"
Calin Juravle [Wed, 14 May 2014 16:07:10 +0000 (17:07 +0100)]
Document a known test issue in stdio_test.cpp.
Bug:
13077905
Change-Id: Iab7fc7be0737c732e26cc07ecd7884b3087b51bb
Calin Juravle [Tue, 13 May 2014 19:29:01 +0000 (20:29 +0100)]
Fill in missing bits in x86(_64) ucontext_t
Bug:
12828904
Bug:
12875898
Change-Id: I0ec0dfe16af80bfb3153f3c3b1b3d180eff30f39
Andrew Hsieh [Thu, 15 May 2014 01:52:22 +0000 (01:52 +0000)]
Merge "Rename user_i387_struct -> user_fpregs_struct in sys/ucontext.h"
Elliott Hughes [Thu, 15 May 2014 01:18:55 +0000 (18:18 -0700)]
Move libstdc++ into libc.
The Android build system always links against libstdc++.so anyway. Having
operator new and operator delete in a separate library means we can't use
constructors and destructors on heap-allocated objects inside the C library,
which is quite an unfortunate limitation.
This will be cheaper too; on LP64 we can stop linking against the [now empty]
libstdc++.so giving the dynamic linker one less library to worry about for
every process.
There's precedent too --- we already have no libpthread or librt.
For now I'm leaving the include files where they are, and I'm generating a
dummy libstdc++.so and libstdc++.a. We can come back and clean that up later
if all goes well.
Bug:
13367666
Change-Id: I6f3e27ea7c30d03d6394965d0400c9dc87fa83db
Andrew Hsieh [Thu, 15 May 2014 01:11:11 +0000 (09:11 +0800)]
Rename user_i387_struct -> user_fpregs_struct in sys/ucontext.h
See
93e1907ae1794068c1018750603c9206cb700d1b
Change-Id: Icb207f4e17cfffdd6d37500656434adf1cc34427
Christopher Ferris [Thu, 15 May 2014 01:06:25 +0000 (01:06 +0000)]
Merge "Increase minimum thread size for 64 bit."
Christopher Ferris [Thu, 15 May 2014 00:58:29 +0000 (17:58 -0700)]
Increase minimum thread size for 64 bit.
Bug:
14468519
Change-Id: I642a5515acf5fbed46e77e176f6b5dd3b7c7bd45
Elliott Hughes [Thu, 15 May 2014 00:20:00 +0000 (00:20 +0000)]
Merge "Remove the unused __system_property_wait."
Elliott Hughes [Thu, 15 May 2014 00:02:09 +0000 (17:02 -0700)]
Remove the unused __system_property_wait.
This isn't declared in any header file.
Bug:
14970171
Change-Id: Ib9fce61343dfb6b6ccd7e1430e1a6e34e4e869df
Christopher Ferris [Thu, 15 May 2014 00:00:50 +0000 (00:00 +0000)]
Merge "Do not keep struct state on the stack."
Christopher Ferris [Wed, 14 May 2014 23:06:17 +0000 (16:06 -0700)]
Do not keep struct state on the stack.
This structure is huge (~18000 bytes on arm64) and can blow out
the stack very easily.
Modify the code to allocate these structures instead of leaving them
on the stack.
Bug:
14468519
Change-Id: I774f71235d896d32a14ab1af06f95ca9ef819f52
Elliott Hughes [Wed, 14 May 2014 23:35:30 +0000 (23:35 +0000)]
Merge "Add tests for fprintf behavior when the underlying fd is bad."
Dmitriy Ivanov [Fri, 9 May 2014 16:10:14 +0000 (09:10 -0700)]
Improve detection of already loaded libraries
Linker is now able to resolve symlinked libraries correctly.
soinfo is extended to save the graph of dependencies during
load/unload. Dependencies are used only in CallConstructor.
Bug:
9741592
Change-Id: Id9c48a74c46aa89bcdf3d54ec2f8ba3d398130b1
Dmitriy Ivanov [Wed, 14 May 2014 21:02:17 +0000 (21:02 +0000)]
Merge "Fix for linker allocator"
Elliott Hughes [Wed, 14 May 2014 20:31:35 +0000 (13:31 -0700)]
Add tests for fprintf behavior when the underlying fd is bad.
Bug:
7229520
Change-Id: Ie878e0c13fdcda7b9131fa56208b84ed88125be7
Elliott Hughes [Wed, 14 May 2014 20:11:22 +0000 (20:11 +0000)]
Merge "Add a unit test for already-fixed printf -0.0 formatting."
Dmitriy Ivanov [Wed, 14 May 2014 19:52:57 +0000 (12:52 -0700)]
Fix for linker allocator
Change-Id: I18a3f1a8515657f0deb69266184fb516a27f90e8
Sreeram Ramachandran [Wed, 14 May 2014 19:40:50 +0000 (19:40 +0000)]
Merge "Mark sockets on accept()."
Elliott Hughes [Wed, 14 May 2014 19:39:12 +0000 (12:39 -0700)]
Add a unit test for already-fixed printf -0.0 formatting.
This was fixed by the upgrade to upstream head.
Bug:
5084292
Change-Id: Ia3bda1c0bbe38f428e22213b8bdbdf1a16caccf2
Elliott Hughes [Wed, 14 May 2014 19:29:45 +0000 (19:29 +0000)]
Merge "Add a regression test for a long-fixed pthread_once bug."
Elliott Hughes [Wed, 14 May 2014 19:29:29 +0000 (19:29 +0000)]
Merge "Remove the broken pthread deadlock prediction."
Elliott Hughes [Wed, 14 May 2014 18:46:08 +0000 (11:46 -0700)]
Add a regression test for a long-fixed pthread_once bug.
Bug:
1934122
Change-Id: Iae09baedc2c6ed4036521e51718fe9d015bc56b9
Elliott Hughes [Wed, 14 May 2014 18:35:49 +0000 (11:35 -0700)]
Remove the broken pthread deadlock prediction.
This hasn't built in over one release cycle and no one even noticed.
art does this the right way and other projects should do the same.
Change-Id: I7d1fb84c4080e008f329ee73e209ce85a36e6d55
Sreeram Ramachandran [Tue, 13 May 2014 22:40:26 +0000 (15:40 -0700)]
Mark sockets on accept().
(cherry picked from commit
58b1f3f6a30a660ad81637c2b50382c3d279243b)
Change-Id: I5d09be413cf720fbed905f96313b007997ada76c
Elliott Hughes [Wed, 14 May 2014 17:59:52 +0000 (17:59 +0000)]
Merge "Fix a typo in the big g_ search/replace."
Elliott Hughes [Wed, 14 May 2014 17:58:58 +0000 (10:58 -0700)]
Fix a typo in the big g_ search/replace.
Change-Id: I79261de70d225236d0eadff288220258d697437f
Elliott Hughes [Wed, 14 May 2014 17:36:35 +0000 (17:36 +0000)]
Merge "Switch to g_ for globals."
Elliott Hughes [Wed, 14 May 2014 17:02:03 +0000 (10:02 -0700)]
Switch to g_ for globals.
That's what the Google style guide recommends, and we're starting
to get a mix.
Change-Id: Ib0c53a890bb5deed5c679e887541a715faea91fc
Ross McIlroy [Wed, 14 May 2014 14:27:40 +0000 (14:27 +0000)]
Merge "Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc."
Ross McIlroy [Wed, 14 May 2014 12:29:19 +0000 (13:29 +0100)]
Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc.
Glibc calls the tag pointer in user_fpregs_struct ftw instead of twd.
Change-Id: I4a8dab777fa889de0b9927035cd18557ae6f3263
Calin Juravle [Wed, 14 May 2014 10:33:46 +0000 (10:33 +0000)]
Merge "Change wctype_t from int to long."
Calin Juravle [Wed, 14 May 2014 10:33:34 +0000 (10:33 +0000)]
Merge "Change wctype_t from enum to int"
Elliott Hughes [Wed, 14 May 2014 02:21:20 +0000 (02:21 +0000)]
Merge "Use the NetBSD inet_ntop until the OpenBSD bug is fixed."
Elliott Hughes [Wed, 14 May 2014 02:17:46 +0000 (19:17 -0700)]
Use the NetBSD inet_ntop until the OpenBSD bug is fixed.
Stupidly I found this bug by accident when writing the existing
tests, but I didn't think any real code would hit it. It turns
out that libcore always uses an INET6_ADDRSTRLEN-sized buffer
even when working with AF_INET addresses.
Change-Id: Ieffc8e4bbe9b66b49b033e3e7101c896e097e6f8
Dmitriy Ivanov [Wed, 14 May 2014 01:45:50 +0000 (01:45 +0000)]
Merge "Remove page level mprotects"
Elliott Hughes [Wed, 14 May 2014 01:43:15 +0000 (01:43 +0000)]
Merge "Fix <sys/endian.h> uint32_t build failures."
Elliott Hughes [Wed, 14 May 2014 01:42:12 +0000 (18:42 -0700)]
Fix <sys/endian.h> uint32_t build failures.
Change-Id: I833b51318f0bf7749073859b7ffacc668c27558e
Dmitriy Ivanov [Wed, 14 May 2014 01:34:48 +0000 (18:34 -0700)]
Remove page level mprotects
Freeing block mprotects on the page which it turn
may lead to application crash if linker subsequently
tries to modify another block on the page.
Bug:
14895266
Change-Id: I8ff7f5df467d7be184242de652032b3c84e24b76
Elliott Hughes [Wed, 14 May 2014 01:09:00 +0000 (01:09 +0000)]
Merge "Flesh out <arpa/inet.h>."
Elliott Hughes [Tue, 13 May 2014 23:05:51 +0000 (16:05 -0700)]
Flesh out <arpa/inet.h>.
Use the upstream OpenBSD implementations of these functions.
Also ensure we have symbols for htonl, htons, ntohl, and ntohs.
gtest doesn't like us using the macro versions in ASSERT_EQ.
Bug:
14840760
Change-Id: I68720e9aca14838df457d2bb27b999d5818ac2b5
Elliott Hughes [Wed, 14 May 2014 01:06:11 +0000 (01:06 +0000)]
Merge "We don't need two copies of <nsswitch.h>."
Elliott Hughes [Wed, 14 May 2014 01:05:29 +0000 (18:05 -0700)]
We don't need two copies of <nsswitch.h>.
Change-Id: I3f874326d96f41249f5c9b1b3c2885f858589029
Sreeram Ramachandran [Wed, 14 May 2014 00:43:47 +0000 (00:43 +0000)]
Merge "Fix build (take two)."
Sreeram Ramachandran [Wed, 14 May 2014 00:24:03 +0000 (17:24 -0700)]
Fix build (take two).
Make sure __netdClientDispatch is defined in the same set of libraries that
refer to it (e.g.: with connect.cpp).
Change-Id: I86d7bf2df5bde09f75a35b204eac0e1361747e22
Sreeram Ramachandran [Tue, 13 May 2014 23:57:07 +0000 (23:57 +0000)]
Merge "Fix build."
Sreeram Ramachandran [Tue, 13 May 2014 23:30:12 +0000 (16:30 -0700)]
Fix build.
Change-Id: I33293d8bc62cbb22e23a704c4242e7e9d3fce7c5
Sreeram Ramachandran [Tue, 13 May 2014 22:07:25 +0000 (22:07 +0000)]
Merge "Introduce netd_client, a dynamic library that talks to netd."
Sreeram Ramachandran [Mon, 12 May 2014 18:19:16 +0000 (11:19 -0700)]
Introduce netd_client, a dynamic library that talks to netd.
The library exists outside bionic. It is dynamically loaded, to replace selected
standard socket syscalls with versions that talk to netd.
Change connect() to use the library if available.
(cherry picked from commit
3a6b627a14df8111b03e452f2df4b5f4938e0e49)
Change-Id: Ib6198e19dbc306521a26fcecfdf6e8424d163fc9
Elliott Hughes [Tue, 13 May 2014 18:27:30 +0000 (18:27 +0000)]
Merge "Upgrade to tzdata2014c."
Elliott Hughes [Tue, 13 May 2014 18:26:46 +0000 (18:26 +0000)]
Merge "Consistently use #if defined(__BIONIC__) in tests."
Elliott Hughes [Tue, 13 May 2014 18:23:18 +0000 (11:23 -0700)]
Upgrade to tzdata2014c.
From the release notes:
Changes affecting near-future time stamps
Egypt observes DST starting 2014-05-15 at 24:00.
(Thanks to Ahmad El-Dardiry and Gunther Vermier.)
Details have not been announced, except that DST will not be
observed during Ramadan. Guess that DST will stop during the same
Ramadan dates as Morocco, and that Egypt's future spring and fall
transitions will be the same as 2010 when it last observed DST,
namely April's last Friday at 00:00 to September's last Thursday at
23:00 standard time. Also, guess that Ramadan transitions will be
at 00:00 standard time.
Change-Id: I6a20cae02a314871acbd52cb90fcbebd37625810
Elliott Hughes [Tue, 13 May 2014 18:19:57 +0000 (11:19 -0700)]
Consistently use #if defined(__BIONIC__) in tests.
I've also switched some tests to be positive rather than negative,
because !defined is slightly harder to reason about and there are
only two cases: bionic and glibc.
Change-Id: I8d3ac40420ca5aead3e88c69cf293f267273c8ef
Elliott Hughes [Tue, 13 May 2014 18:14:48 +0000 (18:14 +0000)]
Merge "Add getmntent_r to our collection of <mntent.h> compatibility stubs."
Elliott Hughes [Tue, 13 May 2014 17:44:07 +0000 (10:44 -0700)]
Add getmntent_r to our collection of <mntent.h> compatibility stubs.
This helps build 'external/flo' out of the box.
Bug:
14841211
Change-Id: I30dde77239cceaf1f5743163744eb3604d27a266
Elliott Hughes [Tue, 13 May 2014 17:32:47 +0000 (17:32 +0000)]
Merge "Reduce stack usage of tmpfile(3)."
Calin Juravle [Tue, 13 May 2014 17:16:30 +0000 (17:16 +0000)]
Merge "Use __LP64__ instead of __LP32__ in sched.h"
Elliott Hughes [Tue, 13 May 2014 17:14:22 +0000 (10:14 -0700)]
Reduce stack usage of tmpfile(3).
Also ensure that none of our home-grown code uses more than 2KiB per frame.
Change-Id: I8987a17d72f4b7f082bb7fa25e137c8433664c14
Dmitriy Ivanov [Tue, 13 May 2014 15:49:18 +0000 (15:49 +0000)]
Merge "Refactor linker allocator"
Calin Juravle [Tue, 13 May 2014 15:01:43 +0000 (16:01 +0100)]
Use __LP64__ instead of __LP32__ in sched.h
Gcc defines only __LP64__ so testing __LP32__ will always be false.
Bug:
14881256
Change-Id: Ic63c1d562be09c3eb4b9e17c9e5ef2d9e404db80
Calin Juravle [Tue, 13 May 2014 12:11:27 +0000 (13:11 +0100)]
Change wctype_t from int to long.
On LP64 this brings us on par with the other libcs where wctype_t is 8
bytes.
Bug:
12875898
Change-Id: Ice4f538ccf0634ef6667a8d90d0f7f09cec9e1b0
Calin Juravle [Tue, 13 May 2014 11:47:27 +0000 (12:47 +0100)]
Change wctype_t from enum to int
This increases bionic source compatibility with other libcs where
"wctype_t foo = 0;" is valid without -fpermissive.
Bug:
14646243
Change-Id: Ia9bd0785bc42c7b46e2bb6c3d9b9a9d3f769d983
Calin Juravle [Tue, 13 May 2014 10:31:06 +0000 (10:31 +0000)]
Merge "Undef private *_BODY defines after use"
Calin Juravle [Tue, 13 May 2014 10:01:11 +0000 (11:01 +0100)]
Undef private *_BODY defines after use
Bug:
14865741
Change-Id: I1398f7b3f64e3c94f2714cede5b61205dfa78a24
Calin Juravle [Tue, 13 May 2014 09:37:07 +0000 (09:37 +0000)]
Merge "Add fpos_t tests."
Calin Juravle [Tue, 13 May 2014 09:36:01 +0000 (09:36 +0000)]
Merge "Support mb sequences across calls to mb*to*wcs* functions"
Dmitriy Ivanov [Mon, 5 May 2014 23:49:04 +0000 (16:49 -0700)]
Refactor linker allocator
Makes it reusable for different fixed sized and not very
big structures (<PAGE_SIZE).
Change-Id: Id5ec13fc6541b1935ef7fe3671c22b98685abbae
Christopher Ferris [Tue, 13 May 2014 00:48:40 +0000 (00:48 +0000)]
Merge "Add 64-bit Silvermont-optimized string/memory functions."
Varvara Rainchik [Tue, 29 Apr 2014 13:44:56 +0000 (17:44 +0400)]
Add 64-bit Silvermont-optimized string/memory functions.
Add following functions:
bcopy, bzero, memcpy, memmove, memset, stpcpy, stpncpy, strcat, strcpy,
strlen, strncat, strncpy, memcmp, strcmp, strncmp.
Set all these functions as the default ones.
Change-Id: Ic66b250ad8c349a43d25e2d4dea075604f6df6ac
Signed-off-by: Varvara Rainchik <varvara.rainchik@intel.com>
Christopher Ferris [Tue, 13 May 2014 00:26:50 +0000 (00:26 +0000)]
Merge "Add 32-bit Silvermont-optimized string/memory functions."
Calin Juravle [Thu, 8 May 2014 13:42:06 +0000 (14:42 +0100)]
Add fpos_t tests.
Bug:
13077905
Change-Id: I86bb0ee95660f69f9971231c6f828a3a067d1ac8
Calin Juravle [Thu, 8 May 2014 13:38:35 +0000 (14:38 +0100)]
Support mb sequences across calls to mb*to*wcs* functions
Bug:
13077905
Change-Id: I5abdc7cc3c27c109b7900c94b112f18a95c35763
Elliott Hughes [Mon, 12 May 2014 23:14:51 +0000 (23:14 +0000)]
Merge "Remove the useless indirection in mips' __set_tls."
Elliott Hughes [Mon, 12 May 2014 23:11:06 +0000 (16:11 -0700)]
Remove the useless indirection in mips' __set_tls.
Change-Id: I12e9d6716c42ccbccc9a186441aca0736bb22d05
Elliott Hughes [Mon, 12 May 2014 22:30:41 +0000 (22:30 +0000)]
Merge "Fix use-after-free errors in stdio_test."
Elliott Hughes [Mon, 12 May 2014 22:15:37 +0000 (15:15 -0700)]
Fix use-after-free errors in stdio_test.
fclose(3) frees the passed-in FILE*. We should close(2) the underlying fd,
not fclose(3) the stream, if we want to test what happens with a stream
we can't read from.
Bug:
14466691
Change-Id: I99fed5904b0266b9c6ae05d0b9cf2e926446c064
Varvara Rainchik [Thu, 24 Apr 2014 11:41:20 +0000 (15:41 +0400)]
Add 32-bit Silvermont-optimized string/memory functions.
Add following functions:
bcopy, memcpy, memmove, memset, bzero, memcmp, wmemcmp, strlen,
strcpy, strncpy, stpcpy, stpncpy.
Create new directories inside arch-x86 to specify architecture: atom,
silvermont and generic (non atom or silvermont architectures are treated like generic).
Due to introducing optimized versions of stpcpy and stpncpy,
c-implementations of these functions are moved from
common for architectures makefile to arm and mips specific makefiles.
Change-Id: I990f8061c3e9bca1f154119303da9e781c5d086e
Signed-off-by: Varvara Rainchik <varvara.rainchik@intel.com>
Dmitriy Ivanov [Mon, 12 May 2014 18:49:34 +0000 (18:49 +0000)]
Merge "Cleanup: updated comments"
Dmitriy Ivanov [Mon, 12 May 2014 18:36:56 +0000 (11:36 -0700)]
Cleanup: updated comments
Bug:
14566672
Change-Id: I49ad28e3914b7d559db1e98542fee919db768f49
Dmitriy Ivanov [Mon, 12 May 2014 17:21:35 +0000 (17:21 +0000)]
Merge "Cleanup: remove AARCH/ARM_COPY relocation support"
Dmitriy Ivanov [Mon, 12 May 2014 16:06:14 +0000 (09:06 -0700)]
Cleanup: remove AARCH/ARM_COPY relocation support
They are only legal for ET_EXEC binaries and these are no
longer supported.
Bug:
14566672
Change-Id: I99e0ff47e8c572db474bc5e52df870a72269abb3
Calin Juravle [Mon, 12 May 2014 09:59:57 +0000 (09:59 +0000)]
Merge "Reserve space for the future in statvfs(64)"
Calin Juravle [Fri, 9 May 2014 21:28:09 +0000 (22:28 +0100)]
Reserve space for the future in statvfs(64)
The kernel struct has some spare space at the end too, and some extra
fields, so having a bit of flexibility in statvfs might be worthwhile.
Bug:
14681331
Bug:
12875898
Change-Id: I5b502c5dd9d2e3bb8f34804f83c02669cefce01e
Calin Juravle [Mon, 12 May 2014 09:53:40 +0000 (09:53 +0000)]
Merge "Align struct passwd definition with other variations of libc"
Elliott Hughes [Sat, 10 May 2014 03:32:28 +0000 (03:32 +0000)]
Merge "Bring in google3-style DISALLOW_* macros."
Elliott Hughes [Sat, 10 May 2014 02:12:08 +0000 (19:12 -0700)]
Bring in google3-style DISALLOW_* macros.
I've been meaning to do this for a very long time...
Change-Id: Ia8c16eee7c026c3c9505399948485fb778fb0152
Elliott Hughes [Sat, 10 May 2014 00:38:50 +0000 (00:38 +0000)]
Merge "Align the child stack in clone(2)."