On Wed, Sep 27, 2017 at 7:54 PM, Pintu Kumar <pintu.p...@gmail.com> wrote: > On Wed, Sep 27, 2017 at 12:52 AM, Laura Abbott <labb...@redhat.com> wrote: >> On 09/26/2017 11:08 AM, Pintu Agarwal wrote: >>> >>> This is a test utility to verify ION buffer sharing in user space >>> between 2 independent processes. >>> It uses unix domain socket as IPC to transfer an FD to another process >>> and install it. >>> >>> This utility demonstrates how ION buffer sharing can be implemented >>> between >>> two user space processes, using various heap ids. >>> >>> This utility is verified on Ubuntu 32-bit machine using 2 independent >>> process such as: ionapp_export (server) and ionapp_import (client). >>> First the server needs to be run to export FD to the client. >>> This utility works only if /dev/ion interface is present. >>> >>> Here is a sample demo example: >>> >>> linux-stable/tools/android/ion$ sudo ./ionapp_export.out -i 1 -s 10 >>> heap_type: 2, heap_size: 10 >>> Fill buffer content: >>> 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd >>> Sharing fd: 6, Client fd: 5 >>> <ion_close_buffer_fd>: buffer release successfully.... >>> >>> linux-stable/tools/android/ion$ sudo ./ionapp_import.out >>> Received buffer fd: 4 >>> Read buffer content: >>> 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd >>> Fill buffer content: >>> 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd >>> 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd 0xfd >>> 0xfd 0xfd 0xfd 0xfd >>> <ion_close_buffer_fd>: buffer release successfully.... >>> >>> Signed-off-by: Pintu Agarwal<pintu.p...@gmail.com> >> >> >> This is a good start on a test app for Ion but it needs to be >> updated to use the new ABI. > > Thanks Laura for your feedback. > Can you point out what changes are required? > Ok I got it what you mean. In the latest mainline kernel I observed that there are several changes to uapi/ion.h header file. Like this one: staging: android: ion: Break the ABI in the name of forward progress
I can quickly make those changes. In fact I actually started with linux-next tree itself. But there is one problem that I am facing using linux-next or latest mainline kernel. Right now, I am running Ubuntu on Oracle virtual box 5.1 (I don't have the real Ubuntu PC as of now). This virtual box supports only 4.10 LTS kernel version. If I try to build and flash for higher kernel version, the system does not boot and goes to kernel panic during boot (even without my changes). So, I ended up using the same LTS kernel version. Now I need to figure out how to use the linux-next tree. If you have any suggestions please let me know. Thanks, Pintu >> >> Thanks, >> Laura