system/core/libion/original-kernel-headers/linux/ion_4.19.h was
edited manually and the following command was run to generate
system/core/libion/ion_4.19.h
bionic/libc/kernel/tools/clean_header.py
-ksystem/core/libion/original-kernel-headers/linux ion_4.19.h
> system/core/libion/ion_4.19.h
Bug: 140916230
Test: make, ion-unit-tests
Change-Id: I6b66bed7e3b11c5b7e80bb0b937d620510f0e172
system/core/libion/original-kernel-headers/linux/ion_4.19.h was
created manually and the following command was run to generate
system/core/libion/ion_4.19.h
bionic/libc/kernel/tools/clean_header.py
-ksystem/core/libion/original-kernel-headers/linux ion_4.19.h
> system/core/libion/ion_4.19.h
Test: make
Bug: 140916230
Change-Id: I2cd8cda903e77374cf85f38fe16a4e82156d5c67
Make sure system heap is present on devices, its id is '0',
and that we can allocate and free buffers from the system heap
Bug: 140507100
Fixes: 140507100
Tests: ion-unit-tests --gtest_fiter=SystemHeap.*
Change-Id: Ief502c9fce1e54f54b4e6d60f288954e4bf42e04
Signed-off-by: Sandeep Patil <sspatil@google.com>
The tests do not care about legacy ION interface and are intended to
concentrate for kernels 4.14+ (new API). Running these tests
successfully during changes in ION will keep us honest with the upcoming
heap-as-module changes in ION.
Test: ./ion-unit-tests on cuttlefish.
Bug: 133508579
Change-Id: I2a31d09d09deb5be9ae84c4981cdf4b3c2cceb4c
Signed-off-by: Sandeep Patil <sspatil@google.com>
The errors were caught by ion-unit-tests. Make sure we fix them before
we start running the tests in automation etc.
Bug: 133508579
Test: ion-unit-tests
Change-Id: I7ebecfa037767481ee7f2b30e2923c84ebc352bf
Signed-off-by: Sandeep Patil <sspatil@google.com>
ion_4.12.h is ported from old Linux Kernel Driver.
According to the header comment, this is licensed under GPLv2.
This header is referred from ion.c.
To clarify license matter just in case, let's convert it using
update_all.py in bionic repository.
The original header is moved under original-kernel-headers/linux
directory.
Found this during FOSSID trial.
Test: build and boot
Change-Id: Iabd46f33968a0fbce14a501238730714c4f2cfc6
Signed-off-by: Yoshitaka Seto <yoshitaka.seto@sony.com>
Get rid of trailing newlines as they just take wasted space.
Added a missing strerror(error) expansion for failure to open.
Test: compile
Bug: 74258013
Change-Id: I04c0038e1ca53d2ffe0a78386744f12874215c19
As a VNDK-SP module, Android.bp must have 'vndk' tag as well as
'vendor_available: true'.
The 'vndk' tag for VNDK-SP formated as follows:
vndk: {
enabled: true,
support_system_process: true,
},
VNDK-SP modules will be installed both in system/lib(64) as normal
and in system/lib(64)/vndk-sp as a vendor variant.
Bug: 63866913
Test: build and boot with BOARD_VNDK_VERSION=current
Merged-In: I51fe0859f63ad58b7b91909e7d7d4206443228cd
Change-Id: I51fe0859f63ad58b7b91909e7d7d4206443228cd
(cherry picked from commit aeb68e86e4)
4.12+ kernels have substantially different ION interface. Adapt
libion to the new one.
In doing so, for sake of clarity, rename ION_IOC_ALLOC to
ION_IOC_NEW_ALLOC the to denote new mechanism.
An ion_is_legacy() is provided to check whether the kernel supports old
ION interface or new. Userspace has the responsibility to use it
accordingly.
Devices using kernels without the 4.12 ION updates, can continue to use libion
as before, and will have no impact.
Only devices using libion with 4.12+ kernels (or kernels with backported ION
updates) will need to update their users of libion, including gralloc.
Test: validated with hikey gralloc, with both old and new kernels
Signed-off-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
[sumits: keep old abi compatibility]
Change-Id: I7899af9e812d0cf5e73b443a3f0248118b42a382
v4.12+ mainline kernels have an updated ION ABI. This patch introduces
the changes in a new temporary file to co-exist for older kernels.
This will ensure no change for existing libion users using older kernels.
Test: validated with hikey gralloc
Signed-off-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
[sumits: moved the headers into new file]
Change-Id: Iea1dc74991cd6a263f370c288ce65d54a3dade87
clang is the default compiler since Android nougat
Test: mma & verified it´s still build with clang
Change-Id: I34adaeef2f6558a09f26027271222bad94780507
Signed-off-by: Lennart Wieboldt <lennart.1997@gmx.de>
libion belongs to vndk-cap. Mark it vendor_available to enable vndk
abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug: 38244611
Change-Id: I8ac290d435b7c4dc5e669bfccb4562495ce92516
Point to log/log.h where necessary, define LOG_TAG where necessary.
Accept that private/android_logger.h is suitable replacement for
log/logger.h and android/log.h.
Correct liblog/README
Effectively a cleanup and controlled select revert of
'system/core: drop or replace log/logger.h' and
'system/core: Replace log/log.h with android/log.h'.
Test: compile
Bug: 30465923
Change-Id: Ic2ad157bad6f5efe2c6af293a73bb753300b17a2
Should use android/log.h instead of cutils/log.h as a good example
to all others. Adjust header order to comply with Android Coding
standards.
Test: Compile
Bug: 26552300
Bug: 31289077
Change-Id: I2c9cbbbd64d8dccf2d44356361d9742e4a9b9031
For build-system CFLAGS clean-up, fix unused variables.
Fix missing close of file descriptors. Explicitly exit after a fork.
Change-Id: I76affbc8647c3a760ed3cacc7f3ada3f59e283b1
This is actually probably broken right now, since these tests are
getting both the libc++ flavor and stlport flavor of libgtest_main.
Bug: 15193147
Change-Id: Ic2f8dda98240c12591803f3c3522505314a05609
The build system is still linking both libgcc and libcompiler-rt,
which is causing duplicate symbol errors on some architectures. This
requires a fix in the build system, so reverting for now.
This reverts commit e3cccbfd47.
This cleans up most of the size-related problems in system/core.
There are still a few changes needed for a clean 64-bit build,
but they look like they might require changes to things like the
fastboot protocol.
Change-Id: I1560425a289fa158e13e2e3173cc3e71976f92c0
Pull the uapi headers from android-3.10 directly into libion.
No other modules should be directly calling ion kernel
interfaces, so there is no reason to have those interfaces
exposed.
Change-Id: I2d3fef08f6bb381522ecf7bcffea2b8280d5e737