Commit graph

375 commits

Author SHA1 Message Date
Christopher Ferris
ea271fdf26 Add gen syscalls step to instructions.
Also, fix incorrect path to some tools.

Change-Id: I409fc02d7077f0d2811d90be19550e70f5d73c0e
2014-07-15 19:02:33 -07:00
Christopher Ferris
38062f954c Update kernel headers to v3.14.
Other changes:
- Modify update_all.py to skip ion header files when importing into aosp.
- Fix generate_uapi_headers.sh to handle imports from a linux-stable kernel.

Change-Id: I1ad81b9ccb063c21740f9875f2cc1238052cd4b3
2014-07-10 13:32:32 -07:00
Duane Sand
2300332596 [MIPS64] Regenerate mips kernel headers with fixed tool
Change-Id: I530891123cba78edbea4aa8af88390213711ab16
2014-06-20 11:08:49 -07:00
Duane Sand
a69eaec4d4 [MIPS64] Adjust kernel/tools for mips32,mips64 headers
Define CONFIG_32BIT as _ABIO32 rather than as 1;
it needs to be undefined for calls from mips64.
We need  defined(CONFIG_32BIT) == !defined(CONFIG_64BIT),
and get that via  defined(_ABIO32) == !defined(__LP64__).

Define CONFIG_CPU_LITTLE_ENDIAN to get correctly-placed
struct msqid64_ds fillers on ipc calls from mips32.
Without this, big-endian fillers were erroneously used.
This bug exists in prior mips32 Android releases.

Define __SANE_USERSPACE_TYPES__ to use int_ll64.h
rather than int_ll64.h on mips64.
This depends on external/kernel-headers patch
 https://android-review.googlesource.com/#/c/98915/
 http://patchwork.linux-mips.org/patch/6890/

Change-Id: If65fa80746533723cdf46eebe95733bea7ce24ba
2014-06-20 10:46:28 -07:00
Christopher Ferris
ab39aba70e Remove unused scripts.
Change-Id: I3391d6c903f710b45e62bcf01058cf3ad9abe399
2014-06-06 15:28:42 -07:00
Christopher Ferris
08b60747fe Update kernel header generation docs.
Also move the description of the cleanup data to the cleanup script.

Bug: 15433575
Change-Id: I21e2cbbfab55da483af1bbe36bbe59126b518e3c
2014-06-06 13:54:36 -07:00
Elliott Hughes
8ed7a23309 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
2014-05-15 12:01:11 -07:00
Elliott Hughes
fddbafdc0a Keep the kernel header scrubber's data structures in sync.
If you rewrite the tokens of a #if you need to rewrite the expression to match
because either might be used later. This was showing up as SIGRTMAX being
rewritten in a #define but not in the #ifndef that guarded it, for which case
I've added a unit test.

Change-Id: I6929675461a1afe272edd667594529fd84a3dc4d
2014-05-01 10:27:49 -07:00
Elliott Hughes
0990d4fda8 Make SIGRTMIN hide the real-time signals we use internally.
__SIGRTMIN will continue to tell the truth. This matches glibc's
behavior (as evidenced by the fact that we don't need a special case
in the strsignal test now).

Change-Id: I1abe1681d516577afa8cd39c837ef12467f68dd2
2014-04-30 10:06:09 -07:00
Ruchi Kandoi
b84926b95c prctl: Adds the PR_SET_TIMERSLACK_PID option
Allows software to set timer clack for other thread.

Change-Id: Ifa9d2cc7844ec581356bce15434609242fd898a8
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2014-04-23 19:13:15 +00:00
Elliott Hughes
9195a258ee Fix kernel header scrubbing for LP64.
Change-Id: I4caf44d41edd1b03a20d4c565e169c2b7a2f3686
2014-04-08 10:15:06 -07:00
Greg Hackmann
8061facb7c Regenerate adf header
Fixes 64-bit related alignment issues

Change-Id: Ie90b920a7489e807e953f45a6db72350b80f6f22
Signed-off-by: Greg Hackmann <ghackmann@google.com>
2014-04-02 16:07:32 -07:00
Elliott Hughes
199346a2ab Fix NSIG.
Our sigset_t definition hasn't been tied to our NSIG definition since we
switched to uapi headers, so we can now fix it without breaking the LP32 ABI.
The kernel uapi headers define and use _NSIG, so we need to have our scripts
rename the kernel's definitions out of the way, then we can define _NSIG
and NSIG in terms of the kernel's off-by-one value.

Bug: 12938442
Change-Id: Ic7c86fd5be5ad1d822f7b2b1d88c8a0d70a1ac0f
2014-02-11 22:16:04 -08:00
Arve Hjønnevåg
fbaa254016 Regenerate binder header
Adds 64 bit support

Change-Id: I6db3c4f68bf2c337bff753599af193e2b062ec05
2014-01-28 19:29:46 -08:00
Colin Cross
d1973ca513 bionic: rename aarch64 target to arm64
Rename aarch64 build targets to arm64.  The gcc toolchain is still
aarch64.

Change-Id: Ia92d8a50824e5329cf00fd6f4f92eae112b7f3a3
2014-01-23 18:35:39 -08:00
Christopher Ferris
be5231442b Remove the non-uapi kernel headers.
Bug: 11559337
Change-Id: Id1ee4dadbd673cf35b9c79bc87f9a6fb7b2253c6
2013-12-18 10:34:18 -08:00
Christopher Ferris
802a0a7285 Add ioprio.h.
Change-Id: I153d05c5b6e9d640e319d65acb48b9cb12b6dafb
2013-12-12 15:23:22 -08:00
Elliott Hughes
c43d16a458 Regenerate the bionic kernel headers to match external/kernel-headers.
Bug: 11859767
Change-Id: I3d746188a1c4bdf8db1358521438435d3e63dbac
2013-11-25 13:50:55 -08:00
Christopher Ferris
cda0c61dc7 am 14d6be45: Merge "Delete non-uapi headers."
* commit '14d6be45b960f8fbb039bd946e22ce406e8b65c3':
  Delete non-uapi headers.
2013-11-24 00:20:23 -08:00
Christopher Ferris
e5a9200534 Delete non-uapi headers.
Update headers and delete non-uapi headers that have been removed from
external/kernel-headers project.

Change-Id: I9ed9632a941095fe1bf3b207bafe1151f00de033
2013-11-23 08:01:25 -08:00
Christopher Ferris
038919d37c am 507f95e2: Merge "Update script to copy in extra generated files."
* commit '507f95e22b39fb58b9ffbba38ab593475b926af5':
  Update script to copy in extra generated files.
2013-11-22 17:22:10 -08:00
Christopher Ferris
b4091e69f1 Update script to copy in extra generated files.
There are files in generated/asm that simply include asm-generic files. The
script now copies any file in generated/asm that also exists in asm-generic.

Change-Id: I075161c68624e9e9e81797224831988ce02220eb
2013-11-22 17:04:34 -08:00
The Android Open Source Project
f00c938c7f Merge commit '811b0cdb2d6e4a697dbc63a678712759dd0db242' into HEAD
Change-Id: I786944f80fb1a2d502fed51dc2c391ed5db66761
2013-11-22 13:38:33 -08:00
Christopher Ferris
26f0e54ae0 Merge "Script to grab uapi headers from android kernel." 2013-11-21 22:20:14 +00:00
Christopher Ferris
e994d41578 Script to grab uapi headers from android kernel.
Change-Id: Ia140e3ab27fbfee6b02f04c085f3e0e351bbe68d
2013-11-21 14:09:54 -08:00
Elliott Hughes
8cb52b056c Regenerate uapi header files.
Change-Id: Idc934ed8ae17aba3300e4022e9b42177b0907e9d
2013-11-21 13:43:23 -08:00
Elliott Hughes
1198fd3864 Add support for the ternary operator to the header scrubber.
Used in various uapi headers.

Change-Id: Id0f862d2adc7ddc9727e8a29160d5435f8d547c3
2013-11-21 11:12:34 -08:00
Elliott Hughes
15a6494856 Merge "Remove obsolete kernel/arch-mips headers." 2013-11-21 17:04:44 +00:00
Elliott Hughes
b867fd6825 Remove obsolete kernel/arch-mips headers.
Bug: 11559337
Change-Id: I70e205ff1f5acd07fddd7d82367e818b13847acd
2013-11-20 18:09:34 -08:00
Elliott Hughes
5cb66cfdc2 Remove the unused arch-x86 and arch-x86-64 kernel headers.
x86-64 already used uapi headers, and x86 can too now.

Bug: 11559337
Change-Id: I1196d2500f06ad40f2488b96fc8ccc7e02c7d5c0
2013-11-19 16:57:42 -08:00
Christopher Ferris
e372ec8cf9 Pull in cleaned version.h header.
Change-Id: Ia917af9336b63ed5a10147770a8110134cb274cb
2013-11-15 16:29:28 -08:00
Elliott Hughes
007eced93b Remove the mips regdef.h and fpregdef.h old kernel headers.
Bug: 11559337
Change-Id: I6352cac9c4ef425cb21e34d0299223711ec079af
2013-11-13 16:13:01 -08:00
Elliott Hughes
740531354e Add a temporary uapi/linux/compiler.h until upstream has one.
Bug: 11559337
Change-Id: I205974b1a26e4f85d0e11503afa80669195d211c
2013-11-08 15:13:54 -08:00
Elliott Hughes
abd626117c Generate the uapi headers for mips and x86/x86_64.
Bug: 11559337
Change-Id: I23b1a43e7bfa8fa6f9df7e59d2e731a0ec52dafc
2013-11-08 11:46:03 -08:00
Ben Cheng
af10f9e927 Merge "Add processed uapi kernel headers for ARM." 2013-11-06 23:55:25 +00:00
Ben Cheng
a6b53f03c7 Add processed uapi kernel headers for ARM.
Change-Id: Id34de841b7b4b5a1bf7d22eb793860f92f24a6e5
2013-11-06 15:51:05 -08:00
Elliott Hughes
40596aa005 Make cpp.py less braindead.
The old code ignored operator precedence (!), despite having two tables
of operator precedence. The code's still pretty awful, but I've cleaned
it up enough to fix this, the most important bug.

This patch lets us correctly clean the uapi unistd.h, stat.h, and swab.h files,
and also fixes the mess we were already making of various old kernel
header files. I've added a bunch more tests, fixed the existing tests that
the existing script was already failing (!), and changed the script so that
the tests are run every time the script is run.

We can probably remove some of the old kernel header files that we were
parsing incorrectly, but we can worry about that later.

Bug: 11253477
Change-Id: Ie66c65b3a7ae13b4e98ed8038a6a534f06eae0e5
2013-11-06 12:04:48 -08:00
Elliott Hughes
3503ce2177 Fix <sys/select.h> for LP64, clean up <time.h>.
The 64-bit uapi headers don't define FD_CLR and friends, so this
patch updates libc/kernel/common/linux/time.h after the change
b934bbec145e9e084bf48149a3a94ae3dd132157 in external/kernel-headers,
then fixes <sys/select.h> to work in this new world, and removes
some now-unnecessary duplication from <time.h> (with other cruft
cleaned up while I'm here).

Change-Id: Ifd26f901b4d200c65065b3e6ef1b74055127e052
2013-11-05 13:28:36 -08:00
Scott Anderson
126f66a601 Refresh libc/kernel/common/linux/uinput.h
Change-Id: Icd830af5aee63276554ebf7bfe8192965209cc59
Signed-off-by: Scott Anderson <saa@google.com>
2013-10-31 15:45:32 -07:00
Ben Cheng
460fa7033b Add __EXPORTED_HEADERS__ as predefined macro.
To weed out stuff like this in uapi/linux/types.h

ifndef __EXPORTED_HEADERS__
warning "Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders"
endif /* __EXPORTED_HEADERS__ */

Change-Id: I6506cea6248f7a3b44a839b98e91bdd0d3a6c4cd
2013-10-23 14:44:38 -07:00
Ben Cheng
2cda66116c am a458b609: am f89f1eaa: Merge "Refresh libc/kernel/common/linux/auxvec.h"
* commit 'a458b609dbbff789a58fe4d2710af947b20d7e29':
  Refresh libc/kernel/common/linux/auxvec.h
2013-10-16 16:58:47 -07:00
Ben Cheng
76b795a8ba Refresh libc/kernel/common/linux/auxvec.h
Change-Id: If9bb50a2f233cdb60e91bd979876edb917e0f66d
2013-10-16 16:50:14 -07:00
Ben Cheng
a5e5fad478 am 29351c80: am 3fdd6b83: Merge "Add processed uapi kernel headers (common and aarch64-specific)"
* commit '29351c8091c4b7338bd47fb6b3e5aed94a2abf32':
  Add processed uapi kernel headers (common and aarch64-specific)
2013-10-16 16:33:50 -07:00
Ben Cheng
2e0b93b01f am 3b1b9f9f: am f0447ddb: Merge "Tweaked the cleanup scripts to handle uapi and aarch64 headers."
* commit '3b1b9f9ff6a2dc88ac0d78fd17f3b58448440357':
  Tweaked the cleanup scripts to handle uapi and aarch64 headers.
2013-10-16 16:09:44 -07:00
Ben Cheng
655a7c081f Add processed uapi kernel headers (common and aarch64-specific)
Change-Id: If0be7b83bd8fe7cb02472d173f7c452aabf61124
2013-10-16 16:09:24 -07:00
Ben Cheng
8bea2b6fac Tweaked the cleanup scripts to handle uapi and aarch64 headers.
The processed uapi directory is now placed at libc/kernel/uapi as
opposed to libc/kernel/common/uapi as it contains
architectural-dependent headers now.

Change-Id: I53f814704a4d231b452fde398cd94257a0fb2eea
2013-10-16 15:28:56 -07:00
Elliott Hughes
5cf3b4bd34 am a8f4e905: am e26135ab: Merge "The x86_64 kernel headers are the x86 kernel headers."
* commit 'a8f4e905fa3fe5998607ff084091879b77257fd0':
  The x86_64 kernel headers are the x86 kernel headers.
2013-10-02 08:57:27 -07:00
Elliott Hughes
86d920c302 The x86_64 kernel headers are the x86 kernel headers.
Change-Id: I8763aee7043800eb23a720914b57396e79fa812e
2013-10-01 18:03:23 -07:00
Elliott Hughes
a08be021cc am 57e55fe3: am fd152c31: Merge "Clean up some comments."
* commit '57e55fe3b32465023071a19e368d91f4804ade3b':
  Clean up some comments.
2013-10-01 11:14:27 -07:00
Elliott Hughes
c0af695426 Clean up some comments.
Copyright headers shouldn't contain the filename (and especially
shouldn't contain a different file's filename).

Change-Id: I82690a3bf371265402bc16f5d2fbb9299c3a1926
2013-10-01 11:10:21 -07:00