Re: [PATCH 1/1] [tools]: android/ion: userspace test utility for ion buffer sharing

From: Pintu Kumar
Date: Thu Sep 28 2017 - 14:16:45 EST


On Thu, Sep 28, 2017 at 11:41 PM, Pintu Kumar <pintu.ping@xxxxxxxxx> wrote:
> On Wed, Sep 27, 2017 at 7:54 PM, Pintu Kumar <pintu.ping@xxxxxxxxx> wrote:
>> On Wed, Sep 27, 2017 at 12:52 AM, Laura Abbott <labbott@xxxxxxxxxx> 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.ping@xxxxxxxxx>
>>>
>>>
>>> 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.
>
Ok, one option is, I can pull all those recent patches and apply on my
LTS branch then verify it and submit on latest release.
But, is there any other option to verify linux-next tree?

>
> Thanks,
> Pintu
>
>>>
>>> Thanks,
>>> Laura