On 10 November 2015 at 13:41, Zoltan Kiss <zoltan.k...@linaro.org> wrote:

>
>
> On 10/11/15 07:39, Maxim Uvarov wrote:
>
>> JIT like lua might also not work because you need to rewrite OVS to
>> support it. I don't think that it will be accepted.
>>
>> And it looks like it's problem in OVS, not in ODP. I.e. OVS should allow
>> to  use library functions for fast path (where inlines are critical).
>> I.e. not just call odp_packet_len(),  but move hole OVS function to
>> dynamic library.
>>
>
> I'm not sure I get your point here, but OVS allows to use dynamic library
> functions on fast path. The problem is that it's slow, because of the
> function call overhead.
>

I'm not familiar with ovs code. But for example ovs has something like:

ovs_get_and_packet_process()
{
// here you use some inlines:
  pkt = odp_recv();
  len = odp_packet_len(pkt);

... etc.

}

So it's clear for each target arch you needs it's own variant of
ovs_get_and_packet_process() function. That function should go from ovs to
dynamic library.

Maxim.




>
>
>> regards,
>> Maxim.
>>
>> On 10 November 2015 at 02:50, Bill Fischofer <bill.fischo...@linaro.org
>> <mailto:bill.fischo...@linaro.org>> wrote:
>>
>>     Adding Grant Likely to this chain as it relates to the broader
>>     subject of portable ABIs that we've been discussing.
>>
>>     On Mon, Nov 9, 2015 at 4:48 PM, Jim Wilson <jim.wil...@linaro.org
>>     <mailto:jim.wil...@linaro.org>> wrote:
>>
>>         On Mon, Nov 9, 2015 at 2:39 PM, Bill Fischofer
>>         <bill.fischo...@linaro.org <mailto:bill.fischo...@linaro.org>>
>>         wrote:
>>         > The IO Visor project appears to be doing something like this
>> with LLVM and
>>         > JIT constructs to dynamically insert code into the kernel in a
>>         > platform-independent manner. Perhaps we can leverage that
>> technology?
>>
>>         GCC has some experimental JIT support, but I think it would be a
>> lot
>>         of work to use it, and I don't know how stable it is.
>>         https://gcc.gnu.org/wiki/JIT
>>         The LLVM support is probably more advanced.
>>
>>         Jim
>>
>>
>>
>>     _______________________________________________
>>     lng-odp mailing list
>>     lng-...@lists.linaro.org <mailto:lng-...@lists.linaro.org>
>>     https://lists.linaro.org/mailman/listinfo/lng-odp
>>
>>
>>
>>
>> _______________________________________________
>> lng-odp mailing list
>> lng-...@lists.linaro.org
>> https://lists.linaro.org/mailman/listinfo/lng-odp
>>
>>
_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to